Page 1 sur 1

Redirection Php

Posté : 25 août 2011, 14:58
par Manserk
Hello

je suis sur un projet (stage) en ce moment

j'ai développé mon appli en php 5.3 mais comme un boulet j'ai pas pensé a verifier la plateforme de production et c'est du 5.1 (bon ça aurait pu etre pire)

mais voila je n'arrive pas a effectuer une redirection (header), l'administrateur a mis l'error_reporting a 0 donc pas d'affichage d'erreur, de plus il n'est pas dispo jusqu'a mardi prochain

j'ai un fichier test :

Code : Tout sélectionner

<?php header("Location: planning.php"); ?>
et... "ça ne marche pas !!"

je n'ais pas de message d'erreur, pas de redirection, l'ecran reste blanc

si vous avez des pistes j'en veux bien :(

Re: Redirection Php

Posté : 25 août 2011, 15:08
par sadeq
Aucune erreur de syntaxe, vérifie bien si la page "planning.php" existe dans le même dossier. Et ça n'a rien à avoir avec la version de PHP.

Re: Redirection Php

Posté : 25 août 2011, 15:23
par Manserk
le fichier existe bien et j'ai aussi essayé

Code : Tout sélectionner

<?php header("Location: http://www.google.fr/"); ?>
est ce que c'est possible de desactiver les header dans le php ini ?


dans mon phpinfo il y a :

Loaded Modules mod_headers

donc ça devrait être bon pourtant ?

Re: Redirection Php

Posté : 25 août 2011, 16:20
par Boro64
Bonjour
-1- Tu as essayé ça:
<?php error_reporting(-1); ?>
-2- Quand tu dis page blanche, il y a quoi dans ta barre d'adresse?
Tchô

Re: Redirection Php

Posté : 25 août 2011, 17:06
par sadeq
Voici les spécifications de la fonction header (doc):
(PHP 4, PHP 5)

header — Envoie un en-tête HTTP

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

header() permet de spécifier l'en-tête HTTP string lors de l'envoi des fichiers HTML. Reportez-vous à » HTTP/1.1 Specification pour plus d'informations sur les en-têtes HTTP.

Attention:
----------------
N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichages PHP. Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui produiront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.

Re: Redirection Php

Posté : 25 août 2011, 17:14
par Manserk
Re ! j'ai essayé de mettre l'erro_reporting a -1 mais ça ne marche pas (toujours page blanche, même si je fait des fautes volontaires)

l'url dans la barre d'adresse reste la même

j'ai essayé de faire une requete grace a dragonfly dans opera, et voici le resultat

Code : Tout sélectionner

GET /livraison/planning/testredir.php HTTP/1.1 Host: caché User-Agent: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.9.168 Version/11.50 Accept: text/html, application/xml;q=0.9, application/xhtml xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 Accept-Language: en Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1 Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0 Connection: Keep-Alive, TE TE: deflate, gzip, chunked, identity, trailers
et voici le resultat

Code : Tout sélectionner

HTTP/1.1 200 OK Date: Thu, 25 Aug 2011 14:55:18 GMT Server: Apache X-Powered-By: PHP/5.1.6 Content-Length: 1 Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Content-Type: text/html
rien de croustillant donc :| j'ai essayé la redirection sur un autre navigateur et elle ne marche pas non plus

mais elle marche pour d'autre sites donc c'est pas le navigateur

Re: Redirection Php

Posté : 25 août 2011, 17:22
par Boro64
Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui produiront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards. [/b]
A la vue du peu de code que tu nous as donné, je serai plutôt d'accord avec ce qui précède...
Et ton fichier est en utf-8 sans BOM ?

Re: Redirection Php

Posté : 25 août 2011, 18:51
par Manserke
ok bah c'est surement ça

je l'ais encodé en Utf 8 tout cours :) je testerais demain la je suis pas sur l'intranet

j'aurais vraiment besoin d'un cours intensif sur les encodage parce que je suis vraiment nul a ça

Re: Redirection Php

Posté : 26 août 2011, 09:34
par Manserk
Re !

effectivement c'était bien ça ! :D sans vous j'aurais jamais trouvé !

merci :P

d'ailleurs je suis bête parce que, dans le header on vois clairement

Code : Tout sélectionner

Content-Length: 1
quel nul je fait :shock:

Re: Redirection Php

Posté : 26 août 2011, 09:35
par Boro64
Super! Content d'avoir pu t'aider!
Tchô