• ModSenior

    Ma $anno e $mese dove li stai prendendo?


  • User Attivo

    Mese è il nome della select e anche anno. Poi ho anche i campi mese e anno nel db...


  • User Attivo

    Il mese e l'anno sono registrati automaticamente quando compilo un form inserimento clienti...


  • ModSenior

    Si, ma
    [php]
    $mese=$_POST['mese'];
    $anno=$_POST['anno'];
    [/php]
    Devi metterli prima della query, non ciclarli.


  • User Attivo

    Mi dà sempre variabili non definite mese anno e diagnosi_ingresso.

    [PHP]
    $query="INSERT INTO diagnosi_data (mese, anno, diagnosi_ingresso) VALUES ('$mese', '$anno', '$diagnosi_ingresso')";

    $insert=mysql_query($query) or die(mysql_error());
    $diagnosi_ingresso=$_POST['diagnosi_ingresso'];
    $mese=$_POST['mese'];
    $anno=$_POST['anno'];
    $query=mysql_query("SELECT * FROM inserimento_dati WHERE YEAR(diagnosi_data) = 'anno' AND MONTH(diagnosi_data) = 'mese' ORDER BY diagnosi_data DESC") or die(mysql_error());

    while($inserimento_dati=mysql_fetch_array($query)){

    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";
    }

    ?>[/PHP]


  • ModSenior

    Non riesco più a capire che cosa dovrebbe fare questa pagina...


  • User Attivo

    Ordinare record secondo data (mese ed anno).


  • ModSenior

    I notice dovrebbe darteli sulla query di insert, non su quella di select...
    Visto che le 3 variabili non sono definite.


  • User Attivo

    Ora l'ho cambiato così ma mi stampa tutti i dati...grrrr 🙂
    [PHP]$query=mysql_query("SELECT * FROM inserimento_dati WHERE YEAR(diagnosi_data) = 'anno' AND MONTH(diagnosi_data) = 'mese' ORDER BY diagnosi_data DESC") or die(mysql_error());
    $mese=$_POST['mese'];
    $anno=$_POST['anno'];

    while($inserimento_dati_=mysql_fetch_array($query)){

    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";[/PHP]


  • User Attivo

    Ma...devo mica fare un'altra tabella "diagnosi_data" con campi mese, anno, gennaio, febbraio ecc. e 2009, 2010 e tutti gli altri anni?


  • ModSenior

    Non devi fare altri campi, il campo deve essere solo 1 in questo caso diagnosi_data, nel record a secondo della data presente nel campo la query ti prenderà solo i record di quel mese e anno.


  • User Attivo

    Ok allora 🙂 Tutto come prima nel senso che non ho aggiungo nulla.

    Ma perchè ora mi stampa tutti i dati anche se selezioni mese e anno?


  • ModSenior

    Posti il codice completo di tutta la pagina?


  • User Attivo

    Eccolo:

    [PHP]
    $query=mysql_query("SELECT * FROM inserimento_dati WHERE YEAR(diagnosi_data) = 'anno' AND MONTH(diagnosi_data) = 'mese' ORDER BY diagnosi_data DESC") or die(mysql_error());

    $mese=$_POST['mese'];
    $anno=$_POST['anno'];

    while($inserimento_dati=mysql_fetch_array($query)){
    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";
    }
    [/PHP]


  • ModSenior

    Non dovrebbe essere cosi?
    Tutte le volte aggiusti una cosa e ne fai un altra. 🙂
    [php]
    $mese=$_POST['mese'];
    $anno=$_POST['anno'];
    $query=mysql_query("SELECT * FROM inserimento_dati WHERE YEAR(diagnosi_data) = '$anno' AND MONTH(diagnosi_data) = '$mese' ORDER BY diagnosi_data DESC") or die(mysql_error());
    while($inserimento_dati=mysql_fetch_array($query)){
    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";
    }
    [/php]


  • User Attivo

    Vero, mi incasino un pò 😄

    [PHP]$mese=$_POST['mese'];
    $anno=$_POST['anno'];

    $query=mysql_query("SELECT * FROM inserimento_dati WHERE YEAR(diagnosi_data) = '$anno' AND MONTH(diagnosi_data) = '$mese' ORDER BY diagnosi_data DESC") or die(mysql_error());

    while($inserimento_dati=mysql_fetch_array($query)){
    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";
    }
    [/PHP]

    Non mi stampa nulla, pagina bianca 😢


  • ModSenior

    Allora nella tabella non c'è un record per quell'anno e quel mese.


  • User Attivo

    Ho provato lo script per vedere se esiste qualcosa e mi stampa "niente ciccia per gatti" 😢

    [PHP]$mese=$_POST['mese'];
    $anno=$_POST['anno'];
    $query=mysql_query("SELECT * FROM inserimento_dati
    WHERE YEAR(diagnosi_data) = '$anno' AND MONTH(diagnosi_data) = '$mese'
    ORDER BY diagnosi_data DESC")
    or die(mysql_error());
    if(mysql_num_rows($query) == 0 ) {
    echo " niente ciccia per i gatti.";
    exit;
    } else {
    while($inserimento_dati=mysql_fetch_array($query)){
    $diagnosi_ingresso=$inserimento_dati['diagnosi_ingresso'];
    echo" <tr><td>$diagnosi_ingresso</td></tr>";
    }
    }
    ?>[/PHP]

    Il mio dubbio è: devo inserire nella tabella database "inserimento_dati"? Lì c'è già anno, mese, poi gennaio, febbraio ecc. e poi 2009, 2010 eccetera.


  • User Attivo

    La tabella inserimento_dati del database è questa:

    id int(11) No 0
    id_cl int(12) No auto_increment
    accettato_da varchar(55) latin1_swedish_ci No
    cognome varchar(55) latin1_swedish_ci No
    nome varchar(55) latin1_swedish_ci No
    luogo_di_nascita varchar(55) latin1_swedish_ci No
    data_di_nascita varchar(55) latin1_swedish_ci No
    eta varchar(11) latin1_swedish_ci No
    residenza varchar(55) latin1_swedish_ci No
    via varchar(55) latin1_swedish_ci No
    recapiti_telefonici varchar(55) latin1_swedish_ci No
    telefono_cellulare varchar(55) latin1_swedish_ci No
    utente_da_contattare varchar(55) latin1_swedish_ci No
    telefono_abitazione2 varchar(55) latin1_swedish_ci No
    telefono_cellulare2 varchar(55) latin1_swedish_ci No
    provenienza varchar(55) latin1_swedish_ci No
    diagnosi_ingresso varchar(55) latin1_swedish_ci No
    data_registrazione varchar(55) latin1_swedish_ci No
    diagnosi_data varchar(55) latin1_swedish_ci No
    mese date No 0000-00-00
    anno date No 0000-00-00
    gennaio date No 0000-00-00
    febbraio date No 0000-00-00
    marzo varchar(22) latin1_swedish_ci No
    aprile varchar(22) latin1_swedish_ci No
    maggio varchar(22) latin1_swedish_ci No
    giugno varchar(22) latin1_swedish_ci No
    luglio varchar(22) latin1_swedish_ci No
    agosto varchar(22) latin1_swedish_ci No
    settembre varchar(22) latin1_swedish_ci No
    ottobre varchar(22) latin1_swedish_ci No
    novembre varchar(22) latin1_swedish_ci No
    dicembre varchar(22) latin1_swedish_ci No
    2009 date No 0000-00-00
    2010 date No 0000-00-00
    2011 varchar(4) latin1_swedish_ci No
    2012 varchar(4) latin1_swedish_ci No
    2013 varchar(4) latin1_swedish_ci No
    2014 varchar(4) latin1_swedish_ci No
    2015 varchar(4) latin1_swedish_ci No
    2016 varchar(4) latin1_swedish_ci No
    2017 varchar(4) latin1_swedish_ci No
    2018 varchar(4) latin1_swedish_ci No
    2019 varchar(4) latin1_swedish_ci No
    2020 varchar(4) latin1_swedish_ci


  • User Attivo

    Ciao! Allora la query va bene...il database no...ho fatto i campi così ora:

    id int(11) No 0
    id_cl int(12) No auto_increment
    accettato_da varchar(55) latin1_swedish_ci No
    cognome varchar(55) latin1_swedish_ci No
    nome varchar(55) latin1_swedish_ci No
    luogo_di_nascita varchar(55) latin1_swedish_ci No
    data_di_nascita varchar(55) latin1_swedish_ci No
    eta varchar(11) latin1_swedish_ci No
    residenza varchar(55) latin1_swedish_ci No
    via varchar(55) latin1_swedish_ci No
    recapiti_telefonici varchar(55) latin1_swedish_ci No
    telefono_cellulare varchar(55) latin1_swedish_ci No
    utente_da_contattare varchar(55) latin1_swedish_ci No
    telefono_abitazione2 varchar(55) latin1_swedish_ci No
    telefono_cellulare2 varchar(55) latin1_swedish_ci No
    diagnosi_ingresso varchar(55) latin1_swedish_ci No
    data_registrazione varchar(55) latin1_swedish_ci No
    diagnosi_data varchar(55) latin1_swedish_ci No
    mese date No 0000-00-00
    anno date No 0000-00-00

    Non ci siamo ancora? SIGH!

    UFFA, ma dove sbaglio? :?:?:?

    Grazie!