Visualizzazione risultati 1 fino 5 di 5

Discussione: Select* se postato entro tot di tempo

  1. #1
    Guest

    Question Select* se postato entro tot di tempo

    Salve!
    Sto provando ad effettuare una query che prelevi dal DB i messaggi solo se inseriti entro un tot di tempo (*nel post di seguito è inserito 10 secondi, ma è solo come test per vedere se funziona), questo è lo script che ho provato:

    Codice PHP:
    <?PHP
    $DATAORIG
    =time() -10;
    $sql = "SELECT ID_CHAT,DATA_CHAT,USER_CHAT,MSG_CHAT FROM CHAT
    WHERE DATA_CHAT<`
    $DATAORIG' ORDER BY ID_CHAT";
    $query = mysql_query ($sql, $connessione) or die(mysql_error());
    ?>
    Però non da segni di vita, continuano ad essere visualizzati tutti i messaggi, anche quelli oltre i 10 secondi...

    Mi è stato detto che il problema potrebbe essere dato che il campo DATA_CHAT del db è di tipo TIME e non TIMESTAMP, è possibile una cosa simile?

    Grazie!
    Ultima modifica di mmorg : 14-03-2006 alle ore 16.20.45

  2. #2
    Guest

    Predefinito

    un errore che ho notato è che nella query fai
    WHERE DATA_CHAT<`$DATAORIG'
    invece dovrebbe essere
    WHERE DATA_CHAT<'$DATAORIG'

    per il tipo di campo lo puoi impostare anche ad INT (INTEGER) che non fa differenza


  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da jostock
    un errore che ho notato è che nella query fai
    WHERE DATA_CHAT<`$DATAORIG'
    invece dovrebbe essere
    WHERE DATA_CHAT<'$DATAORIG'

    per il tipo di campo lo puoi impostare anche ad INT (INTEGER) che non fa differenza

    C'era quell'errore nella scrittura del codice: è vero.
    Il problema ora si è invertito però...

    Ora non mi visualizza neanche quelli scritti dentro il tempo limite (l'ho alzato a 100 secondi).

  4. #4
    Guest

    Predefinito

    secondo me il segno dovrebbe essere > pechè facendo un piccolo ragionamento viene cosi:

    aggiungo un messaggio con il time 100;
    tolto al time attuale 10, facciamo 105 - 10 = 95
    faccio il controllo quindi: 100 > 95.

    se non ho sbagliato in qualcosa...dovrebbe funzionare

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da jostock
    secondo me il segno dovrebbe essere > pechè facendo un piccolo ragionamento viene cosi:

    aggiungo un messaggio con il time 100;
    tolto al time attuale 10, facciamo 105 - 10 = 95
    faccio il controllo quindi: 100 > 95.

    se non ho sbagliato in qualcosa...dovrebbe funzionare
    No, non va neanche cosi.
    Con il segno da un lato non toglie niente, con il segno dall'altro toglie tutto.
    Ma comunque non tiene conto del tempo.

Regole di scrittura

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