OVH Community, votre nouvel espace communautaire.

headers already sent


yakou32
14/10/2007, 16h20
Oui, mais l'encodage de la page est envoyé après mon session_start(). Chronologiquement, il intervient après l'erreur non ?

Oui, tu as raison !
En fait, l'encodage du document est envoyé avec le header, et pas après.

Voici donc la réponse :
1. Bien entendu pas d'éléments envoyés avant le header
2. La déclaration de l'encodage doit exister, et ne doit pas être utf-8 !

Merci encore !

Etienne62
14/10/2007, 16h08
C'est possible que tu aies un problème avec l'encodage de la page, il m'est arrivé la même chose en utilisant Dreamweaver, en corrigeant l'encodage en "europe occidentale", tout a bien fonctionné. Je crois qu'il faut éviter l'UTF-8.

yakou32
14/10/2007, 15h39
et bien non, car je n'en ai pas...

Abogil
14/10/2007, 13h34
Peux-tu nous montrer ton fichier .htaccess ?

yakou32
14/10/2007, 13h10
Ma réflexion avance, mais je ne vois toujours pas.

Sur un autre hébergement donc, le script de sécurisation de l'accès fonctionne :
Je commence la page avec :
session_start();
if ($logout=="ok")
{
session_unregister("statut");
session_destroy();
header("Location: ../index.php");
}
if ($VARstatut!=="adher")
{ header("Location: ../login.php");}
?>
Puis viennent ensuite la connexion à la BDD, le reste de la page, etc...

Sur ce même hébergement, si j'isole ce début de page, sans rien derrière, c'est à dire le script ci-dessus seulement, j'obtiens une erreur de header...
Normalement, ce qui cause l'erreur, c'est ce qui est envoyé avant l'envoi du header, pas ce qui est après...

yakou32
14/10/2007, 13h05
oui,
il n'y a que ces 3 lignes.

mais sur un autre hébergement, mon script d'identification fonctionne, mais ce script test ne fonctionne pas.

Abogil
14/10/2007, 13h01
Appelles-tu directement ce petit script de test ?

yakou32
14/10/2007, 11h57
Bonjour,
Je me retrouve avec une erreur de header déjà envoyé.
Hors il n'y a strictement aucun texte, ni espace, ni code avant le session_start.
D'ailleurs, pour en avoir le coeur net, j'ai fait un fichier de test, ne comprenant que ces 3 lignes :
session_start();
?>

Et j'obtiens une erreur de header already sent à la première ligne !

Il est où le problème ?