Page 1 sur 2
Headers already sent, vraiment je ne comprend pas
Posté : 16 janv. 2008, 14:02
par guilt92
Bonjour,
Je sais que cette question est très souvent abordées et j'ai testé les nombreuses réponses et rien ne fonctionne.
J'ai une page test.php composée
uniquement de la ligne suivante :
<?php header("Location:index.php");?>
Il n'y a aucun espace avant, aucun après, aucun header envoyé puisque c'est la première ligne du fichier et pourtant j'ai ce message d'erreur :
Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\test.php:1) in c:\program files\easyphp1-8\www\test.php on line 1
Comme vous pouvez le voir même en local avec EasyPHP cela ne fonctionne pas (sur mon serveur non plus) et je ne comprends vraiment pas pourquoi...
Merci d'avance.
Posté : 16 janv. 2008, 14:17
par Oxley
Entre le <?php et header il y a un espace non?
Posté : 16 janv. 2008, 14:22
par guilt92
Bah oui sinon y'a une erreur de syntaxe... je peux pas écrire <?phpheader ...
J'ajoute au passage que si je change ma configuration php en mettant output_buffering = On à la place de output_buffering = 0 la redirection fonctionne, mais je ne peux pas faire cela sur mon serveur et je pense que ca n'est pas utile pour une redirection avant un output quelconque...
Posté : 16 janv. 2008, 14:30
par cf357
Essaie de revenir à la ligne, sans espace :
Posté : 16 janv. 2008, 14:50
par Jules Petibidon
Hello,
A l'intérieur des balises <?php .... ?>, le nombre d'espaces n'a aucune importance (il en faut juste un minimum de 1 pour séparer les mots quand même

) donc le problème ne vient pas de là.
Es tu certain qu'il n'y a aucun espace ou saut de ligne avant l'ouverture de ta balise <?php
Problème occasionnel, certains éditeurs rajoutent parfois des caractères invisibles au tout début du document, essaye de voir si ça serait pas le cas (en ouvrant avec le bloc notes par exemple)
Posté : 16 janv. 2008, 17:44
par guilt92
Merci pour vos réponses.
Malheureusement il n'y a aucun espace ni avant ni après les balises, et j'édite dans le bloc note windows

Posté : 16 janv. 2008, 17:50
par Berzemus
même pas un retour à la ligne ?
Et dans ce style-ci ?:
<?php header("Location:htpp://127.0.0.1/index.php");?>
Posté : 16 janv. 2008, 17:54
par guilt92
Non aucun retour à la ligne...
J'ai essayé aussi avec votre code (en corrigeant htpp par http) mais c'est pareil ca ne fonctionne pas... c'est très étrange...
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]
Posté : 16 janv. 2008, 18:05
par Berzemus
Et d'autres scripts php, ils marchent bien ?
Sinon fait un simple <?php ?> dans un ton fichier, et regarde la source de la page, voir s'il n'y aurait rien d'indiqué..
Posté : 16 janv. 2008, 18:11
par guilt92
Le reste des scripts fonctionne bien (dans d'autres pages, ajout/suppression de données en base) et quand je fais que <?php ?> il n'y a rien dans la source de la page...
Posté : 16 janv. 2008, 19:00
par jojolapine
Essaye avec un autre éditeur de texte pour voir (genre scite:
http://www.framasoft.net/article1988.html)
Posté : 16 janv. 2008, 21:53
par netsupra
Deux questions :
- ce fichier n'est il aps inclu dans un autre ?
- Veux tu faire ca pour que des qu'un visiteur arrive sur cette page, il soit redirigé inconditionellement ?
Netsupra
Posté : 16 janv. 2008, 22:42
par dogmongo
Bonsoir
header("Location:<
ici un espace>lien.php"); ?
<?php
header("Location: lien.php");
?>
la come back de toto
Posté : 18 janv. 2008, 16:21
par toto37
J'ai une idée....
Envoi moi ton fichier sur l'adresse email que je vais t'envoyer dans un message privé...
Re: Headers already sent, vraiment je ne comprend pas
Posté : 18 janv. 2008, 16:30
par Aureusms
Bonjour,
Je sais que cette question est très souvent abordées et j'ai testé les nombreuses réponses et rien ne fonctionne.
J'ai une page test.php composée
uniquement de la ligne suivante :
<?php header("Location:index.php");?>
Il n'y a aucun espace avant, aucun après, aucun header envoyé puisque c'est la première ligne du fichier et pourtant j'ai ce message d'erreur :
Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\test.php:1) in c:\program files\easyphp1-8\www\test.php on line 1
Comme vous pouvez le voir même en local avec EasyPHP cela ne fonctionne pas (sur mon serveur non plus) et je ne comprends vraiment pas pourquoi...
Merci d'avance.
Avec quoi ouvre tu ton fichier ? J'ai vu certains logiciels mettre des choses avant <?php comme PSPAD.