Pagina 1 din 1

header error - headers already sent

Scris: Joi Iun 27, 2013
de alexinio3d
Ce sa fac sa nu-mi mai dea urmatoarea eroare ?

Cod: Selectaţi tot

[27-Jun-2013 14:22:07 UTC] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/x15black/public_html/treisute.ro/template/header.php:21) in /home/x15black/public_html/treisute.ro/template/conectare.php on line 4
Acesta ii codu care contine linia 4 :

Cod: Selectaţi tot

if(isset($_SESSION['user'])){
    header('Location: /index.php');
    exit;
} 

header error - headers already sent

Scris: Joi Iun 27, 2013
de MarPlo
Salut
Functia header() nu se poate folosi daca inainte de ea ai date transmise catre browser (cum e si la session_start(), sau setcookie() ).
Dupa cum se intelege din mesajul de eroare, inainte de codul cu header() la linia 4, e inclus fisierul "header.php", care la linia 21 trimite date catre browser.
Ca sa nu mai afiseze mesajul de eroare, adica sa-l ignore caci el tot exista, poti adauga acest caracter " @ " inaintea functiei.
Exemplu:

Cod: Selectaţi tot

@header('Location: /index.php'); 
In documentatia PHP e specificat la header:
Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include, or require, functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.

header error - headers already sent

Scris: Joi Iun 27, 2013
de alexinio3d
am incercaqt sa fac cum miai zis dar nu imi merge.
nu ma trimite pe pagina index.php

header error - headers already sent

Scris: Joi Iun 27, 2013
de MarPlo
Chiar daca eroarea nu mai este afisata, ea exista, prin urmare acea functie header() nu se poate executa datorita motivului erorii, explicat mai sus.
Incearca sa adaugi acel header inainte de a include fisierul care trimite date de iesire la browser; asta daca logica script-ului permite.
Alta solutie nu stiu. Trebuie gandit si construit scriptul astfel incat sa se evite erorile de acest gen.