Hallo!
Ich hab ein kleines Session Problem!
Also
Die Seite baut sich wie folgt auf!
include der checkuser.php (Code weiter unten)
html Code für design
in tabelle wird der PHP code gelesen per include
CODE der INDEX.php
Also in der datei index.php wird zb. inlcude ("home.php") aufgerufen
wenn ich in der home.php nun etwas aus den Sessions auslesen will funktioniert das nur wenn in der home.php auch ein session_start() steht.
wenn ich aber das session_start einfüge bekomm ich 2 Fehlermeldungen:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at .../member/checkuser.php:9) in .../member/home.php on line 2
Line 2 in der home.php = session_start();
Warning: Cannot modify header information - headers already sent by (output started at .../member/checkuser.php:9) in ...member/checkuser.php on line 6
Checkuser.php CODE:
So schreib ich nun @ session_start(); in der home.php wird die erste fehlermeldung unterdrückt die zweite nicht!
Woraus ich eigentlich schließe das die zweite fehlermeldung session_start nicht betrifft!
entferne ich session_start(); aber sind beide fehlermeldungen weg!
Aber ich kann mit
keine ID auslesen ausser es steht session_start in der home.php dann funktionierts.
Klar die zweite meldung weil ich ja schon eine Ausgabe davor habe.
Aber warum kann ich aus den Sessions nur was auslesen wenn ich der datei auch session start steht ???
Ich hab auch probiert das Session_start in der index.php gleich in line 2 zu schreiben dann funktioniert jedoch diee checkuser nicht und es erfolgt gleich der logout.
Weiß jemand wo mein fehler liegen könnte ???
Lg
Ich hab ein kleines Session Problem!
Also
Die Seite baut sich wie folgt auf!
include der checkuser.php (Code weiter unten)
html Code für design
in tabelle wird der PHP code gelesen per include
CODE der INDEX.php
PHP:
<?php
include ("checkuser.php");
?>
<HTML>
<HEAD>...
<TD COLSPAN=3 ROWSPAN=6><?
if(!@$HTTP_GET_VARS["content"]) { $HTTP_GET_VARS["content"]="home"; }
switch ($HTTP_GET_VARS["content"])
{
case "home": include "home.php"; break;
...
}
?>
</TD>
Also in der datei index.php wird zb. inlcude ("home.php") aufgerufen
wenn ich in der home.php nun etwas aus den Sessions auslesen will funktioniert das nur wenn in der home.php auch ein session_start() steht.
wenn ich aber das session_start einfüge bekomm ich 2 Fehlermeldungen:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at .../member/checkuser.php:9) in .../member/home.php on line 2
Line 2 in der home.php = session_start();
Warning: Cannot modify header information - headers already sent by (output started at .../member/checkuser.php:9) in ...member/checkuser.php on line 6
Checkuser.php CODE:
PHP:
<?php
$user_id = $_SESSION["user_id"];
if (!empty ($user_id))
{
header ("Location: ../index.php");
}
?>
So schreib ich nun @ session_start(); in der home.php wird die erste fehlermeldung unterdrückt die zweite nicht!
Woraus ich eigentlich schließe das die zweite fehlermeldung session_start nicht betrifft!
entferne ich session_start(); aber sind beide fehlermeldungen weg!
Aber ich kann mit
PHP:
$id = $_SESSION["user_id"];
Klar die zweite meldung weil ich ja schon eine Ausgabe davor habe.
Aber warum kann ich aus den Sessions nur was auslesen wenn ich der datei auch session start steht ???
Ich hab auch probiert das Session_start in der index.php gleich in line 2 zu schreiben dann funktioniert jedoch diee checkuser nicht und es erfolgt gleich der logout.
Weiß jemand wo mein fehler liegen könnte ???
Lg