PHP Fehlermeldungen








Warning: session_start(): Cannot send session cookie - headers already sent by

 Startseite > PHP Fehler > Warning: session_start(): Cannot send session cookie - headers already sent by

Hier haben wir erläutert warum session_start() diese Meldung manchmal auslöst und wie man sie verhindern kann.


Die Fehlermeldungen
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at E:\php-fehler\test_code.php:2) in E:\php-fehler\test_code.php on line 5

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at E:\php-fehler\test_code.php:2) in E:\php-fehler\test_code.php on line 5

Die Fehlermeldungen sagen das session_start() den Header nicht senden konnte da dieser bereits vor Zeile 2 in der Datei test_code.php ausgegeben wurde.

Der Hinweis <u>output startet</u> zeigt an wo und in welcher Datei die Ausgabe bereits erfolgte, so läßt sich der Fehler bei grösseren Projekten mit includeten Dateien schneller finden.

Der Code:
Code:
  1.  
  2. <?php
  3.  
  4.  
  5. session_start();
  6.  
  7. $_SESSION['wert'] = 5;
  8.  
  9. echo $_SESSION['wert'];
  10.  
  11. ?>



Der Fehler kommt daher Zustande, weil vor session_start() bereits eine Ausgabe (header) an den Browser gesendet wurde.
Ursache hier: Eine Leerzeile vor <?php löste die Ausgabe aus.


Weitere Beispiele:
Code:
  1. <?php
  2. $wert = 5;
  3. $string = 'Hallo';
  4.  
  5. ?>
  6.  <br><div>Hier der Fehler </div>
  7. <?php
  8.  
  9.  
  10. session_start();
  11.  
  12. $_SESSION['wert'] = 5;
  13.  
  14. echo $_SESSION['wert'];
  15.  
  16. ?>


- Fehler: Ausgabe von html code


Code:
  1. $wert = 5;
  2. $string = 'Hallo';
  3.  
  4. echo $string; //Hier der Fehler
  5.  
  6. session_start();
  7.  
  8. $_SESSION['wert'] = 5;
  9.  
  10. echo $_SESSION['wert'];


- Fehler: Ausgabe vor session_start() durch echo $string;



 Kommentare

30.04.2008: spaa

hey danke, hab ewig gesuch, hat geklappt danke.. schoen ..^^

25.09.2008: Äxel

Danke Danke Danke :D hat mir seeehr geholfen ;-)

28.08.2009: Rolf

Hallo, habe eben gelernt, dass bereits ein Leerzeichen vor "<?php" zum gleichen Fehler führt.

24.02.2010: drake

Und was, wenn ein session_start() nicht ganz vorne stehen KANN, sondern in einer if-anweisung mitten im Code ist? Oder wenn eben HTML vorher ausgegeben werden MUSS? Was mach ich dann?

27.03.2010: Patrick

Hää bei mir liegt es nicht daran, code: <?php session_start(); ?> Woran liegt das dann?

09.02.2011: Irmgard

Weitere Möglichkeit: das script ist als UTF8 mit BOM gespeichert. Das sieht man nicht sondern sucht verzweifelt nach dem Leerzeichen vor der Ausgabe.


 Kommentar schreiben

 Ihr Name:
 
 Ihre Emailadresse (wird nicht angzeigt)
 
 Ihr Kommentar (maximal 500 Zeichen)
 

 Wenn Ihnen dieses Bild nicht angezeigt wird, ist wahrscheinlich die Bildanzeige im Browser deaktiviert.
   Sicherheitscode eingeben

 


andere Themen:
23.02.2005 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL
23.02.2005 Warning: fopen(/home/file.txt): failed to open stream: No such file or directory in
22.02.2005 Fatal error: Call to a member function on a non-object in
21.02.2005 Warning: Division by zero


Zurück


<?php echo 'Programmieren - Programme - Scripte - Informationen - PHP: Hypertext Preprocessor - Webprogrammierung'; ?>


© PHP-Fehlermeldungen