setcookie funktioniert nicht

aiquita

Mitglied
Bei meinem Counter funktioniert die setcookie funktion nicht
warum auch immer erhöht sich der counter bei jedem neuen seitenaufruf
auch wird gar kein cookie erstellt
hab das bei mir selber geprüft un bei nem kumpel funktionierts auch nicht

PHP:
 <?php
$datei_name = "counter.txt";    
if (!file_exists($datei_name)) {
  $dz = fopen($datei_name, "w");  
  fwrite($dz,"0");
  fclose($dz);
}

$dz = fopen($datei_name,"r");   
$counter = fread($dz, 10);
fclose($dz);

$besucher = $_COOKIE['besucher'];  
if (!isset($besucher)) {         
  setcookie ("besucher","ja",time()+60*60*24*30);   
  $counter++;                             
  $dz = fopen($datei_name, "w");geschrieben.
  fwrite($dz, $counter);
  fclose($dz);
}
?>

vielleicht kann mir ja jemadn sagen wo der fehler liegt
danke schonmal

Mfg
Marvin
 
Vermutlich wird eine Fehlermeldung an den Browser gemeldet, und damit auch header() schon ausgeführt. setcookie() muss! vor dem Senden von Output gerufen werden.

Schalte doch mal error_reporting() und display_errors via ini_set an und schau, was passiert.

Edit: Wahrscheinlich liegt es aber an diesen Zeilen:

PHP:
$besucher = $_COOKIE['besucher'];  
if (!isset($besucher)) {

Die sollten besser so aussehen:

PHP:
//$besucher = $_COOKIE['besucher'];  
if (!isset($_COOKIE['besucher'])) {
 
Zurück