besucherzähler-script funktioniert nicht richtig

Sarius87

Banned
Registriert
Mai 2016
Beiträge
888
habe das hier geschrieben :

Code:
<?php
$ersterBesuch = date('d.m.Y') ." um " . date('H:m:s');
if(isset($_COOKIE['ersterBesuch'])) {
	setcookie("besuche", ++$_COOKIE['besuche']);
	echo 'Erster Besuch: '. $_COOKIE['ersterBesuch'];
}else{
	setcookie("ersterBesuch", $ersterBesuch);
	echo "willkommen, du bist das erste mal hier !"; } ?>


einfach so diesen code in die index geht , füge ich den aber dann in die bestehende index meiner website ein kommt immer nur "erster besuch" , habe mal teile aus der index raus genommen um zu schauen woran es liegt , bin jetzt darauf gekommen dass das script irgendwie nur nicht geht wenn zu viel "text" bzw. zeilen in der index sind , das kann doch nicht sein ?? ab etwa 80 zeilen funktioniert das nicht mehr... egal welcher code , auch unnötige <br> ganz oft sorgen dafür dass es ab einer bestimmten anzahl nicht mehr geht... verstehe es nicht
 
Zuletzt bearbeitet:
setcookie (auf server seite) wird in den http headers gesendet, d.h. der befehl muss vor jeglicher ausgabe der eigentlichen index-datei stehen.

falsch:
Code:
echo("ding dong");
setcookie();

richtig:
Code:
setcookie();
echo("ding dong");

sowas wird einem fuer gewoehnlich in PHP-fehlermeldungen naeher gebracht; ueberpruef doch mal die error-logdatei deines webservers auf eine entsprechende meldung beim anzeigen der seite.
 
das ist doch aber richtig ? habe doch setcookie vor echo ...

log :

Code:
[Sun Jan 29 18:13:30.118248 2017] [:error] [pid 26851] [client 87.XXX:62845] PHP Warning:  Cannot modify header information - headers already sent by (output started at /var/customers/webs/website/index.php:88) in /var/customers/webs/website/index.php on line 92
 
Zuletzt bearbeitet:
Es darf vorher KEINE Ausgabe erfolgen. Also darf auch die HTML Seite nicht vor dem PHP Code losgehen.
 
ahhh und wie mache ich es aber dass die texte unten auf der seite stehen und nicht oben direkt dann ?
 
schreib deine ausgabe in eine variable und gib sie an der richtigen stelle dann aus
 
Zurück
Oben