Probleme mit Cookies und Headern
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aufruf
code
ding
fehler
fehlermeldung
garnichts
header
http
index
lokalen apache
output
page
problem
rat
unbedingt fehler
url
warnung
weiss jemand
-
Hier erstmal meine index.php
<?php error_reporting(E_ALL); include "./includes/configuration.inc.php"; if(!$mod || ($mod == "")) $mod = "home"; if(!$skin || ($skin == "")) { $skincookie = $_COOKIE["skin"]; if(!$skincookie || ($skincookie == "")) { $skin = "default"; } else { $skinselected = $skincookie; } } if($mod) { $pathmod = "./mod/$mod.php"; if(isset($skinselected) && ($skinselected != "")) { $pathskin = "./skins/$skinselected/style.css"; } else { $pathskin = "./skins/$skin/style.css"; } if(file_exists($pathskin)) { setcookie("skin","$skin",time()+(3600*24*365)); } else { setcookie("skin","default",time()+(3600*24*365)); $skin = "default"; } if(!file_exists($pathmod)) { $mod = ucfirst($mod); include "mod/fehler.php"; } else { $mod = ucfirst($mod); include "mod/$mod.php"; } } ?>
Nun zu meinem Problem:
Wird die seite das erste mal ohne irgendwelche paramerter aufgerufen, wird kein Cookie gesetzt.
Ich bekomme die Fehlermeldung:
Warning: Cannot modify header information - headers already sent by (output started at C:\HTTPD\www\www\cms\index.php:5) in C:\HTTPD\www\www\cms\index.php on line 33
Wenn ich dann einen Skin auswähle, wird dieser über ?skin=skinname an die index.php übergeben.
Das klappt auch, ein Cookie wird gesetzt. Die ganze Page arbeitet nun mit dem neuen skin.
Will ich nun jedoch einen neuen Skin auswählen, passiert garnichts.
Weder wird das cookie überschrieben, noch bekomme ich eine Fehlermeldung, und die seite hat den alten skin.
Gleichzeitig habe ich mein CMS unter http://hateress.lima-city.de hochgeladen.
Doch wenn ich diese URL aufrufe, wird garnichts angezeigt.
Auf meinem lokalen Apache läuft es jedoch ohne probleme.
Weiss jemand einen Rat?
Beitrag zuletzt geändert: 1.11.2010 16:27:53 von hateress -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Header sollten immer vor allen anderen Dingen (include, usw...) gesetzt werden, also direkt nach <?php
Bevor du den Header setzt oder Cookies schreibst/liest/etc. sagst du:
error_reporting(E_ALL);
Ist un eine Variable beispielsweise nicht korrekt deklariert (isset, empty, etc...), gibt es nicht unbedingt Fehler, aber eine Warnung d.h. einen Output. Ist ein Output erfolgt, kann kein Header mehr gesendet und/oder verarbeitet werden.
Beitrag zuletzt geändert: 5.11.2010 13:42:28 von fabo -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage