Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58

    Aggiungere secondi a date()

    Ciao Ragazzi, avrei bisogno di una mano gentilmente. Il mio scrypt mi dovrebbe permettere di controllare il campo timestamp nella tabella user_online se è minore di 10 secondi del timestamp corrente. Ecco lo scypt che ho creato ma non va. Non mi da errori ma non vedo nulla, la pagina è bianca! Help

    Codice PHP:
    <?php
     
    // includo DB e STATUS 
    include "db_config_reload.php";
     include 
    "control_status.php"
        
    // assegno variabili per pulire codice
    $time = ("date('d M y - H:i:s')");
    $sec =  ("date('d M y - H:i:s+10')");
    // seleziono i campi nelle varie tabelle
    $timestamp "SELECT timestamp FROM users_online WHERE username = ('$db_username')" or die(mysql_error());
    while(
    mysql_fetch_array($timestamp))
    {
    if (
    $timestamp $sec $time
    {
    echo 
    OFFLINE;
    }else
    {
    echo 
    ONLINE;
    }
    }
    ?>
    Ultima modifica di snakom23; 16-02-2014 a 04:35

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ciao e benvenuto, quello che hai scritto non ha senso, che conoscenze hai di programmazione php da 1 a 10? Dal codice si direbbe poca per i seguenti motivi:
    $sec = ("date('d M y - H:i:s+10')");//per aggiungere devi usare add
    // seleziono i campi nelle varie tabelle
    $timestamp = "SELECT timestamp FROM users_online WHERE username = ('$db_username')" or die(mysql_error());//$db_username dove la recuperi? E in oltre non credo che ci vadano le parentesi tonde (quando posti del codice postalo completo di tutto, gli utenti che leggono il tuo post non possono supporre o immaginare)
    while(mysql_fetch_array($timestamp))
    {
    if ($timestamp + $sec < $time)//alla query ($timestamp) vorresti aggiungere 10 secondi e confrontala? E un eresia in termini di programmazione
    In sintesi almeno le basi di programmazione php ci vogliono altrimenti non potresti capire neanche gli aiuti
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Aggiungo: OFFLINE ed ONLINE scritte così devono essere delle costanti, sono definite da qualche parte? Altrimenti PHP non ti stamperà niente (magari è anche queso il problema).
    Per stampare una stringa con echo, la devi racchiudere tra apici ' o virgolette ".

    In ultimo, si scrive "script", niente y.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Innanzitutto grazie per i consigli!
    ho corretto il codice ora funziona in parte, rimane sempre il problema per il confronto fra il campo timestamp+10secondi e il la data e ora corrente, non mi funziona la somma non lo prende il campo timestamp. Quindi lo script dovrebbe in teoria visualizzare solo i timestamp di quei utenti loggati e con il suddetto campo maggiore della data e ora corrente.

    ps
    il campo timestamp nel DB è un campo TIMESTAMP.

    Codice PHP:
    <?php 
    // includo DB e STATUS
    include "db_config_reload.php";       
    // controllo loginsession_start();
    require_once('lib/Users.class.php');
    // pulizia codice con variabili
    $login = New Users;
    $db_username $login->get_username();
    $time date('Y/m/d - H:i:s');
    $sec =  date('Y/m/d - H:i:s' ,strtotime('+10 seconds'));
    // seleziono i campi nelle varie tabelle
    $timestamp =  "SELECT timestamp FROM users_online WHERE username = '$db_username' AND timestamp+'$sec' > '$time'";$go mysql_query ($timestamp) or die(mysql_error());
    while(
    $array=mysql_fetch_array($go))
    {  echo 
    $array['timestamp'];
    }  
    ?>
    Ultima modifica di snakom23; 16-02-2014 a 17:19

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Ho provato a modificare cosi! mA NULLA

    Codice PHP:
    <?php 
    // includo DB e STATUS
    include "db_config_reload.php"
          
    // controllo login
    session_start();
    require_once(
    'lib/Users.class.php');
    // pulizia codice con variabili
    $login = New Users;
    $db_username $login->get_username();$time date('Y m d - H:i:s');
    $offline "OFFLINE";
    // seleziono i campi nelle varie tabelle
    $timestamp =  "SELECT timestamp FROM users_online WHERE username = '$db_username'";
    $go mysql_query ($timestamp) or die(mysql_error());
    $sec strtotime("+20 days"$go);
    while(
    $array=mysql_fetch_array($go))

    if (
    $sec<$time)
    {echo 
    $array['timestamp'];
    }
    else {echo 
    $offline;
    }
    }
    ?>
    Ultima modifica di snakom23; 16-02-2014 a 18:58

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    RISOLTO!!!

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.