"session_start" et "header()"

Résolu/Fermé
hektoumayo - 18 mai 2005 à 22:03
 Ny89 - 6 sept. 2015 à 00:54
Salut,
Voila j'ai fait un script dans lequel session_start et header( )n'est pas au début du script. J'ai des messages d'erreur du style :

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at c:\program files\easyphp1\www\config.inc.php3:2) in c:\program files\easyphp1\www\inscription.php3 on line 23

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1\www\config.inc.php3:2) in c:\program files\easyphp1\www\inscription.php3 on line 23

Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1\www\config.inc.php3:2) in c:\program files\easyphp1\www\inscription.php3 on line 25

Qu'est ce que je peux alors faire pour contourner ce problème. J'ai essayé de lire une solution à ce problème sur un site mais je n'ai rien compris. Si quelqu'un avait une reponse claire ça serait vraiment sympa.
Pour info ,je possède la derniere version de EasyPHP.
Merci d'avance.
A voir également:

40 réponses

kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 523
18 mai 2005 à 22:49
Salut... Ben pas le choix, il faut que ces instructions soient en début de script. Il ne faut pas qu'un seul caractère de texte soit généré avant....
42
Salut , regarde stp cette page :

http://www.lephpfacile.com/howto/index.php?p=10

Plus particulirement le script du fichier "index.php" tu vera qu'il y a un "session_start" au milieu du script. COmment cela se fait ?
0
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 523
19 mai 2005 à 00:02
La première partie ce sont des tests sur les Variables post reçues.
Ensuite c'est connexion Sql puis envoi de requête.

Il n'ya là aucun envoi de texte du genre echo ou print etc... Ce sont des opérations qui n'ont pas encore construit la page à envoyer au client.

La génération de texte provoque l'envoi des headers (en-têtes Http), on ne peux plus les retravailler après...

Je me suis fait piéger ya deux jours, car j'avais cette erreur de "headers already sent".
J'ai traîné pendant 15 minutes alors que l'erreur venait de quelques espaces en tout début de page :-)
0
hektoumayo > kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016

19 mai 2005 à 00:35
Moi j'ai mis au début du script include("config.php") - tu sais le fichier ou tu defini le serveur , l'utilisateur et le mot de passe de la base de donnés- .Est ce que tu pense que c a cause de sa ?
0
kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016
1 523 > kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016

19 mai 2005 à 00:39
Et si tu mets ce passage (le include) en commentaire ça donne la même erreur?
0
Alcyane > kilian
Messages postés
8731
Date d'inscription
vendredi 19 septembre 2003
Statut
Modérateur
Dernière intervention
20 août 2016

6 juil. 2007 à 18:56
Hello !
Juste pour remercier Kilian : grâce à lui je viens de gagner un temps fou ! (j'avais laissé deux espaces avant mon session start() ) !!!
0