Comunitatea PHP Romania
MightyDeals

Prima pagină PHP General Cod PHP Eroare: "Cannot modify header information"

Eroare: "Cannot modify header information"

Ai o întrebare legată de PHP? Incercăm să îi găsim soluţie. Sau poate doar vrei să publici un cod interesant.

Mesaj Lun Aug 06, 2012 10:35 pm
lexta Junior Member

Mesaje: 41
Bună Seara, am şi eu o mică problemă cu un script.
Primesc eroarea:

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domeniu/template/header.tpl:5) in /home/admin/domeniu/login.php on line 4


În login.php la linia 4 am următorul cod:

if(isUserLoggedIn()) { header("Location: index.php"); die(); }


Cum se poate repara asta ? :?

Mesaj Lun Aug 06, 2012 10:48 pm
R3dC0d3 PHPRomania Supporter

Mesaje: 11
Problema la functia header ii ca nu trebuie sa existe niciun fel de cod care sa afiseze ceva inaintea ei nici html nici php.
Poti inlocui cu:
echo"<script>window.location='index.php';</script>";

Apropo nu are niciun sens sa apelezi functia die() dupa ce folosesti header sau orice alt cod de redirectionare deoarece utilizatorul nu va ajunge pana la acel mesaj va fi ... redirectionat.

Daca ai alte intrebari poti sami trimiti un pm.

Mesaj Mar Aug 07, 2012 10:05 am
hadyh Average Member

Mesaje: 118
ba dupa ce se face redirectarea trebuie sa pui die() sau exit sa nu ti se execute restul de cod ;)

Mesaj Mar Aug 07, 2012 1:59 pm
MihaiC Avatar utilizator
Senior Member

Mesaje: 1602
Localitate: Navodari
if(isUserLoggedIn()) { header("Location: index.php"); die(); }


Sunt in stare sa pun pariu ca in functia isUserLoggedIn() ai un output :P
Internet Explorer – The Number one Browser For Downloading a Better Browser

Mesaj Mie Aug 08, 2012 2:20 pm
mihaitha Avatar utilizator
Senior Member

Mesaje: 2346
Localitate: Sibiu
Eu mai degraba as vota cu un spatiu sau un enter inainte de tag-ul "<?php"

Either way, verifica si asta si ce a zis MihaiC.

+1 la ce a zis hadyh.
Arguing with retards is like playing chess with a pigeon: no matter how good you are at chess, the pigeon is just going to knock over the pieces, crap on the board and strut around like it's victorious.

Mesaj Sâm Aug 11, 2012 3:07 pm
trustnet PHPRomania Supporter

Mesaje: 24
Localitate: Alba Iulia

Se mai poate rezolva problema si daca se modifica in php.ini

output_buffering

Fara alte modificari de cod, dar daca codul este gresit scris, poate crea o incarcare mai mare la server.
http://www.trustnetsolutions.ro
Gazduire web de la doar 1 euro / luna

Mesaj Mar Aug 28, 2012 11:24 am
teodor98 Average Member

Mesaje: 90

in loc sa pui accea optiune pe on eu iti recomand sa folosesti

echo "<meta http-equiv='refresh' content='0;url=fisier.php' />";

Mesaj Mar Aug 28, 2012 11:39 am
keen Senior Member

Mesaje: 253
Localitate: Br?ila

Eu zic sa folosesti functia asta ;)
function redirect($url) {
if (!headers_sent())
header('Location: '.$url);
else {
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>';
}
}

redirect("pagina-ta.php");

Mesaj Dum Apr 14, 2013 12:55 am
Google Bot New Member

Mesaje: 1

Înapoi la Cod PHP

Copyright © 2001-2013 PHP Romania Gazduire web | Haine online | Gazduire web | Campanii SMS | Gazduire Claus Web | Inregistrare Domenii | Anunturi | Jocuri cu bile
Furnizat de phpBB® Forum Software © phpBB Group
Translation/Traducere: phpBB România
Powered by Simplis
cron