Visualizzazione risultati 1 fino 11 di 11

Discussione: QUery con condizione in php. Ma la condizione?

  1. #1
    Guest

    Predefinito QUery con condizione in php. Ma la condizione?

    Allora, semplicemente il problema è questo:

    Codice PHP:
    $oggi = date("Y-m-d");
    $query = mysql_query("SELECT * FROM accessi WHERE 'acc_data' = $oggi");
    Credevo che così funzionasse, invece non estrae niente dalla tabella.

    Cosa sbaglio?

  2. #2
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Ovviamente la condizione: stringa con scritto "acc_data" uguale a "05-10-25" fallisce

    Togli gli apici attorno a acc_data,
    è un NOME di un campo e non un valore stringa (come ora viene interpretato).
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  3. #3
    Guest

    Predefinito

    Avevo già provato... comunque così, giusto?
    Codice PHP:
    $oggi = date("Y-m-d");
    $query = mysql_query("SELECT * FROM accessi WHERE acc_data = $oggi");
    if (!
    $query) echo "Query fallita!";
    Continua a non funzionare.
    La query però non fallisce, cioè, la riga che non avevo messo nel primo post non viene visualizzata...

  4. #4
    Guest

    Predefinito

    $query = mysql_query("SELECT * FROM accessi WHERE acc_data = '$oggi'");


    Ciaoo!!!!!

  5. #5
    Guest

    Predefinito

    Grazie a tutti per l'attenzione!
    Ho già provato anche quella soluzione, ma non cambia nulla.
    Forse è il tipo di campo che ho scelto che è incompatibile.

  6. #6
    Guest

    Predefinito

    Bho, non ho mai provato a fare ricerche in base ad un campo date.
    Prova usando LIKE al posto di =.
    Se ancora non dovessi riuscire prova a fare questa operazione direttamente in phpMyAdmin, prima manualmente (cioè scrivendo la query), e poi facendolo fare a phpmyadmin, vai in Cerca e selezioni il campo acc_data


    Ciaooo!!!!!!

  7. #7
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    Ho fatto un po' di prove dirette con SQL.
    L'unica condizione per cui non venga rilevata alcuna riga è che il il valore nel campo non esista.

    ma la funzione mysql_num_rows ti ritorna proprio 0?
    hai verificato?

    Se possibile puoi postare tutta la struttura della tebella e il record incriminato?

    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

  8. #8
    Guest

    Predefinito

    No, infatti la tabella era a posto, è la query!!
    Bisognava usare LIKE, come suggerito da debug.

    Avevo già provato, ma forse in quel momento avevo fatto aulche altro errore.
    Beh, insomma la fomra corretta e funzionante è:
    Codice PHP:
    $query = mysql_query("SELECT * FROM accessi WHERE acc_data LIKE $oggi ORDER BY acc_id desc");
    Grazie!

  9. #9
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    Sono contento che il problema si sia risolto, ma c'è comunque un lato oscuro in tutto questo.
    Se la query funziona utilizzando la like, deve funzionare anche con un semplice "=", a condizione che la stringa sia corretta.

    Forse passavi una stringa "sporca" o era sporco il dato nella tabella.
    Personalmente mi ci soffermerei un pochino per cercare di capire.

    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

  10. #10
    L'avatar di heracleum
    heracleum non è connesso Utente storico
    Data registrazione
    21-01-2004
    Messaggi
    3,333

    Predefinito

    Mah infatti...
    anche io mi aspettavo che fungesse con "=".. ma può ache darsi che mi confondo con altri dbms...
    Avvertimento: richiedere in privato questioni tecniche produrrà inevitabilmente una supercazzola prematurata come risposta. (5 served)

  11. #11
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    Citazione Originalmente inviato da heracleum
    Mah infatti...
    anche io mi aspettavo che fungesse con "=".. ma può ache darsi che mi confondo con altri dbms...
    Non credo Hera!
    Come ho scritto qualche post più su, ho creato una tabella sul mio db e ho utilizzato una stringa SQL direttamente dall'editor.
    Se mysql non supportasse il controllo di uguaglianza sulla data, sarebbe impossibile farlo anche senza PHP.

    A meno che la versione montata su AV sia più vecchia di quella da me utilizzata e che non supporti questa cosa (mi sembra veramente assurdo )

    Penso che farò qualche ricerca su internet, questa cosa mi ha incuriosito.
    Se trovo qualcosa poi vi faccio sapere.

    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •