Visualizzazione dei risultati da 1 a 4 su 4

Discussione: utenti online

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    97

    utenti online

    Ciao a tutti,
    Gentilmante qualcuno mi saprebbe dire che cosa vuol dire questo errore:
    PHP Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\.........
    Il codice lo controllato una decina di volte ormai con varie configurazioni ma mi da sempre lo stesso errore.
    Vi posto il codice di (utenti online) dovrebbe visualizzare il munero di visitatori nel home.
    <-------------------inizio codice ----------->
    Codice PHP:

    <?php    
    session_start
    ();          
    $ip $_SERVER["REMOTE_ADDR"]; 
    $ip str_replace("."""$ip); //Tolgo i puntini dall'ip, per comodità.     
    if(!$_SESSION["Visita"]) //Se non c'è alcuna sessione "Visita" da parte del visitatore...     {         $_SESSION["Visita"] = array("tempo" => time(), "id" => 
    $ip); //...gliene assegno una!     }          function check()     {         
    $file file("online.txt"); //File che contiene i visitatori attivi.             
    $tempo_online 600//Il tempo dopo il quale il visitatore è da considerarsi off-line.         foreach($file as $riga)         {             
    $ix explode("|"$riga);            
     if(
    time() >= $ix[1])             {                 
    $w[] = "";                 
    $b 1;             }             else             {                 
    $w[] = $riga;             }         }         if($b)         {             $w implode(""$w);             $fu fopen("online.txt""w+");             fwrite($fu$w);             fclose($fu);         }     }     function online($tipo)     {         
    $tempo_online 600//Il tempo dopo il quale il visitatore è da considerarsi off-line.         
    $file file("online.txt");         foreach($file as $rigo)         {             
    $ex explode("|",$rigo);            
     if(
    $ex[0] == $_SESSION["Visita"]["id"])             {                 
    $w[] = $ex[0]."|".($_SESSION["Visita"]["tempo"] + $tempo_online)."|\n";                 
    $a 1;             }             else             {                 
    $w[] = $rigo;             }         }                  
    if(!
    $a//Nuova visita.         {             
    $fp fopen("online.txt""a+");            
     
    fwrite($fp$_SESSION["Visita"]["id"]."|".($_SESSION["Visita"]["tempo"] + $tempo_online)."|\n");             fclose($fp);         }        
     else 
    //Visita aggiornata.         {             
    $w implode(""$w);             
    $fp fopen("online.txt""w+");            
     
    fwrite($fp$w);             
    fclose($fp);         }         
    check(); //controllo se qualche sessione è scaduta.         
    $agg file("online.txt"); //Rileggo il file.         if($agg[0] != "")         {             
    $n_online count($agg);         }         else         {             
    $n_online 0;         }         
    if(!
    $tipo)         {             return "Utenti connessi: ".$n_online//Mostra: Utenti connessi: #         }         else         {             return "document.write('Utenti connessi: ".$n_online."');";         
    }     
    }  
    ?>
    <--------- per stampare a video ------>


    Codice PHP:
    <?php   include("online.php"); //online.php è la pagina con il codice dello script   echo online(0); 
    ?>
    Un saluto e grazie per leventuale risposta

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    227
    Guarda bene il codice PHP, il testo che hai aggiunto. Se scrivi
    //
    tutto quello che verrà dopo, sulla stessa riga, non verrà contato. Quindi, per esempio:
    Codice PHP:
    if(!$_SESSION["Visita"]) //Se non c'è alcuna sessione "Visita" da parte del visitatore...     {         $_SESSION["Visita"] = array("tempo" => time(), "id" =>  
    $ip); //...gliene assegno una!     }          function check()     { 
    Fallo diventare

    Codice PHP:
    if(!$_SESSION["Visita"]) //Se non c'è alcuna sessione "Visita" da parte del visitatore...
         
    {         $_SESSION["Visita"] = array("tempo" => time(), "id" =>  
    $ip); //...gliene assegno una!
         
    }          function check()     { 
    In questo modo dovrebbe leggere correttamente il codice. Se hai problemi posta
    Ciao!
    Alex

  3. #3
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197

    Re: utenti online

    Originariamente inviato da Mariodp
    <--------- per stampare a video ------>
    Codice PHP:
    <?php   include("online.php"); //online.php è la pagina con il codice dello script   echo online(0); 
    ?>
    prima di includere questo file, mandi qualcosa in output? anche solo uno spazio, ad esempio...

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    97
    Grazie per avermi risposto, il codice era solo postato male nel originale non era commentato.
    Le tue modifiche non funzionano mi da sempre lo stesso errore e non funziona.

    Codice PHP:
    if(!$_SESSION["Visita"]) //Se non c'è alcuna sessione "Visita" da parte del visitatore...     {         $_SESSION["Visita"] = array("tempo" => time(), "id" =>   $ip); //...gliene assegno una!     }          function check()     { 

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.