Session wieder aufnehmen

RomeoG

Grünschnabel
Hallo,
wollte heute man das Login-System-Tutorial durcharbeiten bzw verstehen und habe das jetzt auch am laufen (d.h. nicht das ichs bis in letzte verstanden habe, was wohl auch mein Problem begründet)

Also,
wenn der user sich eingeloggt hat, dann kann er laut Tutorial zwischen verschiedenen Seiten wechseln ohne das die Session-Variablen verloren gehen.
Die Frage ist nun nur:

Wie ist der wechsel zwischen den Seiten zu realisieren? So wie ichs vorhatte gehts auf jedenfall schonmal nicht.

Mein Code bzw. die erweiterung des Tutorial-Codes

PHP:
---- Erst die intern.php von der aus man ja ausgeht

<?php 
include ("checkuser.php"); 
?> 
<html> 
<head> 
  <title>Interne Seite</title> 
</head> 
<body> 
  BenutzerId: <?php echo $_SESSION["user_id"]; ?><br> 
  Nickname: <?php echo $_SESSION["user_nickname"]; ?><br> 
  Nachname: <?php echo $_SESSION["user_nachname"]; ?><br> 
  Vorname: <?php echo $_SESSION["user_vorname"]; ?> 

  <a href="mitglieder_session.php">Seite 2</a> // Das ist der Link auf den der User wechseln soll

  <hr> 
  <a href="logout.php">Ausloggen</a> 
</body> 
</html>

--------------------------------------------------------------------------------
// Hier nun meine Mitgliederliste (auf der eigentlich oben links der eingeloggt User angezeigt werden soll)
--------------------------------------------------------------------------------

<html>

<head>
<title>Mitgliederliste</title>
</head>

<body bgcolor="#ffffff">

Nickname: 
<?php 
session_start ();
echo $_SESSION["user_nickname"]; 
?>

<p>Mitgliederliste</p>

(.....)


Die Alternativen sehen so aus:

Lasse ich session_start () drin kriege ich die folgende Anzeige:

Nickname:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at C:\Programme\Apache Group\Apache2\www\mySQL\Login-System\mitglieder_session.php:14) in C:\Programme\Apache Group\Apache2\www\mySQL\Login-System\mitglieder_session.php on line 15

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at C:\Programme\Apache Group\Apache2\www\mySQL\Login-System\mitglieder_session.php:14) in C:\Programme\Apache Group\Apache2\www\mySQL\Login-System\mitglieder_session.php on line 15
Romeo

-------------------------------------

Oder wenn ich nicht session_start ausführe, dann wirde der Benutzername nicht angezeigt.

Wo ist der Fehler?
Vielen Dank

Romeo
 
Original geschrieben von Patrick Kamin
Ich bekomme die Fehlermeldung "cannot add header information", was mache ich falsch?
  • Diese Fehlermeldung wird ausgegeben, wenn versucht wird, ein Cookie zu setzen, eine Session zu starten oder per Header auf eine andere Seite weiterzuleiten, zuvor allerdings schon HTML Code an den Browser geschickt wurde. Entweder ihr stellt nun euren Code dementsprechend um oder ihr benutzt die Funktion ob_start() in Verbindung mit ob_end_flush().

So, zu finden im PHP Faq im hisigen (?) Forum, als "Wichtig" Markiert
und der Titel weißt darauf hin dass man es lesen sollte.

Du darfst vor session_start(); KEINEN(!) HTML Code an
den Browser senden.
 
Zurück