Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28

Discussione: Ricerca

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133

    Ricerca

    Ciao a tutti!
    Stò cercando di creare un form con ricerca tramite data mese ed anno ma non riesco...mi aiutate per favore?

    Vi posto la pagina html e la pagina php

    Codice PHP:
    <form action="data.php" method="post" name="data"

    DATA


    <select>
    <
    option value="GENNAIO">GENNAIO</option>
    <
    option value="FEBBRAIO">FEBBRAIO</option>
    <
    option value="MARZO">MARZO</option>
    <
    option value="APRILE">APRILE</option>
    <
    option value="MAGGIO">MAGGIO</option>
    <
    option value="GIUGNO">GIUGNO</option>
    <
    option value="LUGLIO">LUGLIO</option>
    <
    option value="AGOSTO">AGOSTO</option>
    <
    option value="SETTEMBRE">SETTEMBRE</option>
    <
    option value="OTTOBRE">OTTOBRE</option>
    <
    option value="NOVEMBRE">NOVEMBRE</option>
    <
    option value="DICEMBRE">DICEMBRE</option>



    </
    select>

    <
    select>
    <
    option value="2009">2009</option>
    <
    option value="2010">2010</option>
    <
    option value="2011">2011</option>
    <
    option value="2012">2012</option>
    <
    option value="2013">2013</option>
    <
    option value="2014">2014</option>
    <
    option value="2015">2015</option>
    <
    option value="2016">2016</option>
    <
    option value="2017">2017</option>
    <
    option value="2018">2018</option>
    <
    option value="2019">2019</option>
    <
    option value="2020">2020</option>



    </
    select>

    <
    input type="submit" value="INVIA">


    </
    form>
    </
    form
    Codice PHP:
    $query=mysql_query("SELECT * FROM dati WHERE YEAR(data) = 'anno' AND MONTH(data) = 'mese' ORDER BY data DESC") or die(mysql_error());  



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

    $id_cl=$dati['id_cl'];
    $ingresso=$dati['ingresso'];


    echo 
    "<tr><td>$id_cl</td><td>$ingresso</td><td>";
     

    Nel db ho record "data" TIMESTAMP NULL predefinito mi dà 0000-00-00 00:00:00 se invece metto NOT NULL mi dà CURRENT TIMESTAMP

    Praticamente mi stampa tutti i dati che ho è non secondo la data che gli dò.

    Grazie molte!!!

  2. #2
    come minimo assegna il name alle due select altrimenti.... ciccia.

    Tieni presente poi che il mese nel db si presenta in formato numerico 01-12. I dati in arrivo da POST li troverai in $_POST['tua_var'] e non in una stringa come passi al where

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Ciao! Cavolo ho aperto senza volere un altro topic. Scusate!

    Grazie Piero per la risposta.
    Allora ho nominato le select giustamente
    Poi ho aggiunto due campi al db "mese" e "anno" ma mi dà tutti i dati ugualmente.
    Quindi non ho capito
    Puoi spiegarmelo meglio, con php ho iniziato da poco.
    Grazie!!!
    Ciao!!!

  4. #4
    cominciamo dal database: se ti serve solo la data usa un campo DATE, se ti serve anche l'ora un campo DATETIME.

    la select:

    Codice PHP:
    <select name="mese">
    <
    option value="01">GENNAIO</option>
    <
    option value="02">FEBBRAIO</option>
    <
    option value="03">MARZO</option

    etc ......

    <
    select name="anno">
    <
    option value="2009">2009</option

    etc...... 
    i dati li prelevi con:
    Codice PHP:
    $mese $_POST['mese'];
    $anno $_POST['anno']; 
    la query:
    Codice PHP:
    $query mysql_query("SELECT * 
                        FROM dati 
                        WHERE YEAR(data) = '
    $anno' AND MONTH(data) = '$mese
                        ORDER BY data DESC"

                 or die(
    mysql_error()); 
    oppure il where potrebbe anche essere:
    Codice PHP:
    WHERE date_format(data'%Y%m') = '$anno$mese' 

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Grazie Piero, ma continua a stamparmi ancora tutti i dati indipendentemente dalla data che metto...

    Codice PHP:
    $query=mysql_query("SELECT * FROM dati WHERE YEAR(data) = '$anno' AND MONTH(data) = '$mese' ORDER BY data DESC") or die(mysql_error());  



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

    $id_cl=$dati['id_cl'];
    $ingresso=$dati['ingresso'];
    $mese=$_POST['mese'];
    $anno=$_POST['anno'];


    echo 
    "<tr><td>$id_cl</td><td>$ingresso</td></tr>";

    }
      
    ?> 
    Mi dice che non ho neanche definito le variabili mese e anno...e poi mi mette tutti gli ingressi a prescindere dalla data...

    Grazie Piero!

  6. #6
    cerchiamo di "capiamoci"....

    tu prima utilizzi le variabili e "dopo" le valorizzi??? manco le query scritte con la release di Lourdes potrebbero farcela.

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

    $query "SELECT * 
              FROM dati 
              WHERE YEAR(data) = '
    $anno' AND MONTH(data) = '$mese
              ORDER BY data DESC"
    ;

    echo 
    $query;

    $res=mysql_query($query) or die(mysql_error());

    while (
    $dati=mysql_fetch_assoc($res)) {

    $id_cl $dati['id_cl'];
    $ingresso $dati['ingresso'];

    echo 
    "<tr><td>$id_cl</td><td>$ingresso</td></tr>";


    prova a vedere cosa ti stampa echo $query.



    ?>

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Mi stampa query vuota in quel modo...

    Magari mi ci metto domani perchè a quest'ora non mi viene nulla in mente...comunque riposterò...

    Grazie in ogni caso Piero! Gentilissimo!

    Ciao e notte!!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Ciao! Cavolo non ho messo tutti i mesi nel db e tutti gli anni che ho nella select...sarà per quello?

    Piero, non ho capito quello che vuoi dire, perdonami, puoi farmi un esempio? che intendi per valorizzare?
    Grazie!

  9. #9
    Originariamente inviato da zzzyyy23
    Ciao! Cavolo non ho messo tutti i mesi nel db e tutti gli anni che ho nella select...sarà per quello?

    Piero, non ho capito quello che vuoi dire, perdonami, puoi farmi un esempio? che intendi per valorizzare?
    Grazie!
    in italiano:

    valorizzare = dare un valore.

    tu utilizzi: $anno e $mese senza aver prima dato loro un valore. Il valore glielo dai "dopo" averli usati.

    Se echo ti stampa una query vuota ... chissa' che roba stai facendo con quello script.

    http://php.html.it/guide/leggi/99/guida-php-di-base/
    http://php.html.it/guide/leggi/101/guida-php-pratica/
    http://php.html.it/guide/

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    133
    Ciao, così non mi stampa niente...perchè?

    Codice 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>";



Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.