PHP: session_start
-
Hi!
Hab mir Apache und PHP auf meinem PC installiert. Wenn ich jetzt aber session_start mache, gibt er mir das aus, was ich will, aber oben stht dann noch:Warning: session_start(): Cannot send session cookie - headers already sent by (output started at C:\Apache\Apache2\htdocs\index.php:2) in C:\Apache\Apache2\htdocs\index.php on line 3
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at C:\Apache\Apache2\htdocs\index.php:2) in C:\Apache\Apache2\htdocs\index.php on line 3
Wieso kommt das, und wie kann ich das wegbekommen?
cya,
Master Death
-
Was ist dir an der Fehlermeldung nicht klar?
-
Ich versteh halt nich, wie der das schon schicken konnt. "already sent"
Ausserdem sieht das ganze unschön aus
-
Hast du irgendwelche Zeichen vor der öffnenden PHP-Klammer? Irgendwelche "echos" oder sonstige Sachen die du bereits ausgibst?
-junix
-
nee, sieht so aus:
<HTML>
<?PHP
session_start();
....
-
Lies mal die Doku
http://at2.php.net/session_startspeziell den Absatz
Note: If you are using cookie-based sessions, you must call session_start() before anything is outputted to the browser.
-
MasterDeath schrieb:
nee, sieht so aus:
<HTML>
<?PHP
session_start();
....Eben. Genau das ist ja das Problem:
<HTML> //<-- hier fängt der output direkt an <?PHP //<-- dann beginnt der Parser zu laufen session_start(); //<-- hier sollten noch header-oinfos gesendet werden, // was aber nichtmehr möglich ist, da ja der header schon // gesendet wurde, weil <html> bereits versendet wurde.
Ausserdem sollteste mit der Zeit dann eh von PHP-Code im HTML wegkommen. Das macht vieles dann gern unübersichtlich.
-junix
-
ok, thx, soweit hab ich das jetzt hinbekommen