Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202

    Query temporali PROBLEMA

    Ho tentato di fare una query temporale su un database, che ha memorizzato la colonna

    "Data Intervento" come formato date

    Da <input type="date" name="dataI"> A <input type="date" name="dataF">

    così inserisco le informazioni che con una form vengono passate con il metodo POST alla pagina php.

    $codkit= $_POST['CodeK'];
    $datain= $_POST['dataI'];
    $dataend= $_POST['dataF'];

    $q_temp= "SELECT COUNT(*) FROM interventi WHERE 'Codice_Kit_Usato'='$codkit' AND 'Data Intervento' BETWEEN '$datain' AND '$dataend'";
    $query= mysql_query($q_temp) or die (mysql_error());
    $cont=mysql_fetch_row($query);

    echo "<h2>Il Kit $codkit è stato usato $cont[0] volte</h2>";

    questo sopra è il codice della pagina a cui vengono inviate le informazioni, sbaglio in qualcosa??? perchè il risultato è sempre 0....se uso phpmyadmin e faccio una query usando costanti invece mi funziona O.o

  2. #2
    WHERE 'Codice_Kit_Usato'='$codkit' AND 'Data Intervento' .....

    qui compari due stringhe che nulla hanno a che vedere con il db.

    Se codice_kit-usato e data_intervento sono i nomi di due campi devi metterli senza le apici. forse confondi le apici con il backtick cioe' l'apice ' con l'apostrofo `

    Da evitare poi di usare dei caratteri come spazio nel nome del campo. Usa sempre _ al posto dello spazio.

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    Risolto funziona mancava l'apostrofo nel nome interventi :P per le date funziona benissimo......!!!

  4. #4
    Originariamente inviato da neidus
    Risolto funziona mancava l'apostrofo nel nome interventi :P per le date funziona benissimo......!!!
    Non vorrei deluderti, ma FROM interventi senza nulla (ne apici o apostrofi) era la piu' corretta. Poi:

    'Data Intervento' BETWEEN '$datain' AND '$dataend'";

    confronta la stringa 'Data Intervento' con il contenuto di $datain e $dataend.

    Se poi tu ritieni sia corretto buon per te. contento tu, io di piu'.


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

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    viene passato in modalità date....quindi da quello che ho letto....se uso il tipo date quindi formato

    aaaa-mm-gg si confronta facilmente con le date del database memorizzate anche lì con il tipo date!

    cmq la query di COUNT avviene in modo corretto e senza errori XD

  6. #6
    Originariamente inviato da neidus
    viene passato in modalità date....quindi da quello che ho letto....se uso il tipo date quindi formato

    aaaa-mm-gg si confronta facilmente con le date del database memorizzate anche lì con il tipo date!

    cmq la query di COUNT avviene in modo corretto e senza errori XD
    rileggi bene quello che ho scritto... se il nome del campo e' messo tra apici viene letto come fosse una stringa letterale e non legge il contenuto del campo

    Poi ti suggerisco caldamente di non usare gli spazi nel nome dei campi o tabelle. Ti eviterai sgradite sorprese in seguito.

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

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    sisi infatti ho ricopiato male....gli apici non servivano

    Per lo spazio fra parole dello stesso campo, provvederò tks

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.