Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221

    utenti online e query su database

    Aiuto!

    ho il seguente problema:

    quando eseguo la seguente query sul databse per vedere gli utenti online sul sito:
    codice:
    $timeout = 200;  
    $conta ="select * from utenti where last > NOW()-$timeout";
    va tutto quasi sempre...dico quasi perchè certe volte (ad ogni cambio d'ora sul server)la query anzichè restituirmi gli utenti online mi riporta TUTTI gli utenti presenti nel database...
    questo mi crea un disagio enorme (tramite gli utenti online gestisco la chat)!!!
    come posso fare per evitare o aggirare questo problema??

    ahhh dimenticavo la colonne last del database è definita come timestamp(14)

    Grazie a tutti!

    Daniele
    ciAo

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    è possibile che l errore sia legato a timestamp(14) ?
    ciAo

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    ciAo

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    ciAo

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    ciAo

  6. #6
    La query non e' corretta. Il formato timestamp(14) rappresenta yyyymmddhhmmss ed il fatto di sottrarre od addizionare valori non ha senso se non si specifica di quale valore stai trattando. Diverso sarebbe UNIX TIMESTAMP dove il valore rappresentato e' sempre in secondi.

    Per prima cosa va definito il valore di 200 come unita' di misura, 200 sec, 200 min, ore..... e poi dichiarato nella condizione where.
    codice:
    $timeout = 200;   // di che?  secondi???
    $conta ="select * from utenti 
             where last > NOW() - INTERVAL $timeout SECOND";
    Ovviamente se il valore erano secondi. MINUTE HOUR DAY ecc se invece non fossero dei secondi.

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

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    221
    azzz!
    hai perfettamente ragione, ora ci prova!

    Grazie mille

    ciAo

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.