Liens commerciaux :
Exemple incorrect :
<?php
echo 'test';
header('location:page.php'); //le texte "test" a déjà été envoyé au navigateur, il y aura donc une erreur
?>
Voici maintenant deux autres exemples corrects (le "echo" ne figure plus dans le premier exemple car il est inutile d'afficher une information avant une redirection, le visiteur sera redirigé avant d'avoir vu la moindre chose) :
<?php
header('location:page.php'); //Pas d'erreur
?>
Et le deuxième exemple correct lui aussi, car nous utilisons la bufferisation de sortie qui permet de modifier les en-têtes n'importe où dans le code :
<?php
ob_start();
echo 'test';
header('location:page.php'); //Exemple correct
ob_end_flush();
?>
Voilà ! l'erreur des headers already sent devrait avoir disparue.
Modifier cet article
Historique des modifications
Forum de discussion
Partager cet article
Voir la licence de cet article
Vous utilisez :
(4 choix possibles)