Autor Zpráva
HANKA
Profil *
Muze mi nekdo, prosim, vysvetlit, proc

<?php
session_start();
?>

<?php

if (isset($_SESSION['admins'])):

....

header("location: admin.php");

endif;

?>

... NEFUNGUJE

a

<?php
session_start();
?>

<?php

if (isset($_SESSION['admins'])):

....

header("location: admin.php");

endif;

?>

... FUNGUJE

NEJDE MI O TO, ZE JE ZBYTECNY PHP UKONCOVAT A ZASE OTVIRAT (to je jen priklad), ALE DUVOD PROC PRVNI PRIPAD NEJDE A DRUHY FUNGUJE, I KDYZ PODLE MNE, PRAVIDLO PRO PRESMEROVANI POMOCI HEADER NENI PORUSENO ANI V PRVNIM
Peca
Profil
V čem že se ty dva skripty mají lišit?
TFSi
Profil
Sice jsou ty dva kódy stejné, ale asi jsem pochopil: není náhodou problém v nějakém volném řádku mezi session_start(); a header(); ??
HANKA
Profil *
Tak tomu dala... ten druhy ma byt

<?php
session_start();

if (isset($_SESSION['admins'])):

....

header("location: admin.php");

endif;

?>
bukaj
Profil
to je právě kvůli tomu:

...
?>[nový řádek]
[nový řádek]

<?php
...


vyhazuje to určitě chybu: "Cannot modify header information - headers already sent..." (nebo nějak tak), že?

pokud je ve skriptu již nějaký výstup (včetně 'bílých znaků') tak se automaticky odešlou hlavičky a začíná se přes HTTP sunout sám výstup, tudíž už nejdou posílat hlavičky (byly odeslány), tudíž nelze přesměrovat.
Toto téma je uzamčeno. Odpověď nelze zaslat.