Salve ragazzi,
ho trovato in rete la seguente classe che mi conta i numeri di visite:
class accessCount{
//dichiarazione delle propietà
var $fileName;
//metodo costruttore
function accessCount($inValue){
$this->fileName=$inValue;
$this->setAccess();
}
//metodo che scrive nel file l'accesso
function setAccess(){
$tmpFile=@fopen($this->fileName,'a+');
if(!$this->getCookies()){
$tmpIp=$_SERVER['REMOTE_ADDR']."\n";
$this->setAccCookies();
fputs($tmpFile,$tmpIp);
fclose($tmpFile);
}
}
//metodo che imposta un cookies
function setAccCookies(){
setcookie('accesso',time(),time()+86400);
}
//metodo che restituisce true se viene trovato il cookies
function getCookies(){
if($_COOKIE['accesso']!='')
return true;
else
return false;
}
//metodo che conta quanti accessi ci sono stati
function getAccessi(){
if(is_file($this->fileName))
echo 'Ci sono stati '.count(file($this->fileName)).' accessi.';
}
}
In locale mi funziona, quando invece lo metto sul server mi da il seguente errore:
Warning: Cannot modify header information - headers already sent by (output started at /web/htdocs/www.direzionemare.it/home/systemTest/numeroVisita.php:70) in /web/htdocs/www.direzionemare.it/home/systemTest/include/accessCountUnique.php on line 42
La riga 42 che viene segnalato nel warning corrisponde alla riga "setcookie('accesso',time(),time()+86400);"
Qual'è il problema? come posso risolverlo?
Sembra che nn riesca a settare il cookie...bhoooo
Grazie.