Eroare session_start headers already sent

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
alexinio3d
Mesaje:96

Eroare session_start headers already sent

Salutare .
Imi poate spune careva de ce primesc urmatoarea eroare la session ??

Cod: Selectaţi tot

PHP Warning:  session_start() [<a href='function.session-start'>function.session-start</a>]: Cannot send session cookie - headers already sent in *************config.php on line 2
Pagina de config.php imi arata asa :

Cod: Selectaţi tot

<?php
session_start();
header('Cache-control: private');
ob_start();
Siteuri create / configurate de mine :
SilvoProject.Ro ( Magazin Online ) : SilvoProject.Ro
TreiSute.Ro ( Comunitate de gaming ) : TreiSute.Ro

MarPlo Mesaje:4343
Salut
Din codul pe care l-ai adaugat nu se vede sa fie vreo problema, dar poate e legat si includere in alt fisier.
Ca raspuns general, eroarea apare cand s-a aplicat session_start() dupa o linie de cod ce trimite date de output la browser , sau dupa includerea unui fisier cu astfel de date (cum ar fi un header() sau echo, un cod html sau chiar un spatiu inainte de <?php ).
Deci, verifica sa nu ai date de iesire la server inainte de session_start(), sau daca folosesti fisiere incluse, sa nu ai session_start(); in fiecare dintre ele, ci doar in primul.
Ori, ca sa eviti astfel de eroare, se poate folosi asa:

Cod: Selectaţi tot

if(!isset($_SESSION)) session_start();  
O alta cauza in astfel de erori poate fi daca fisierul php a fost editat cu un editor care nu l-a salvat cum trebuie.
Incearca sa editezi fisierul cu un editor de text simplu, recomandat Notepad++. Sa nu fie nici un spatiu inainte de "<?php", si sa salvezi fisierul cu Encoding UTF-8 without BOM.

- Problema asta mai e pusa si in alte subiecte pe forum, poti cauta: " session_start headers already sent ".

Subiecte similare