par
Ryle » 01 déc. 2006, 11:19
Ben non, au contraire, tu as ta réponse
Si ton script php ne commence qu'à la ligne 9, c'est que les 8 lignes précédentes ne sont pas du php mais un flux html, qui est donc envoyée immédiatement au navigateur.
Il n'est donc plus possible d'envoyer un entête (header) puisque des données ont déjà commencé à être envoyées
Pour pouvoir utiliser un header(), un session_start() ou un set_cookie() il faut absolument qu'aucune donnée ne soit envoyée au navigateur. Pas de balise html, pas de texte, pas d'espace ou de retour à la ligne... uniquement du php !
Ton script doit donc commencer par <?php dès la ligne 0 (voire -1

), et ne dois faire ni print, ni echo, ni se refermer ("?>") avant que tu ne place le header

Ben non, au contraire, tu as ta réponse :)
Si ton script php ne commence qu'à la ligne 9, c'est que les 8 lignes précédentes ne sont pas du php mais un flux html, qui est donc envoyée immédiatement au navigateur.
Il n'est donc plus possible d'envoyer un entête (header) puisque des données ont déjà commencé à être envoyées :)
Pour pouvoir utiliser un header(), un session_start() ou un set_cookie() il faut absolument qu'aucune donnée ne soit envoyée au navigateur. Pas de balise html, pas de texte, pas d'espace ou de retour à la ligne... uniquement du php ! :)
Ton script doit donc commencer par <?php dès la ligne 0 (voire -1 ;)), et ne dois faire ni print, ni echo, ni se refermer ("?>") avant que tu ne place le header :)