IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Redirection avec la fonction "header"


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut Redirection avec la fonction "header"
    Bonjour,

    J'ai un fichier "toto.php" à l'intérieur duquel il y a un appel à header("location: xx.php") qui ne marche pas à cause du pb classique qu'il ne faut pas avoir envoyé qq chose en sortie avant l'appel à header... Je le sais et pourtant même en mettant la ligne de code header en 1er ligne de mon code "toto.php" (avant tout include...) ca ne marche toujours pas !!!
    Comme si l'entete était envoyé avant automatiquement ??
    Pour info le fichier "toto.php" est appelé par un formulaire get.

    Quelqu'un voit-il la solution ??

    Merci

  2. #2
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    Bonjour,

    Une erreur très classique est de lire un fichier avec include ou require , et de laisser des espaces ou des lignes vides, qui génèreront un affichage avant que la fonction header ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.
    Peut etre etes vous dans ce cas de figure ?

  3. #3
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Ton fichier toto.php serait-il encoder en UTF-8 avec BOM ? Si c'est le cas enlever le BOM résoudrait le problème.

    Pour info le BOM est l'ajout de caractères en début de fichier pour indiquer l'odre des octets. Voir wiki pour plus d'info.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut peut-etre la sol
    Merci de ces réponses.
    En fait non le fichier toto.php est encodé en Cp1252 (sous Eclpise).

    Par contre j'ai l'impression que je viens de trouver la sol. Ca parait complètement fou mais bon :
    ja'avais écris header("Location: xxx.php")
    et je viens de remplacer les " par des ' soit :
    header('Location: xxx.php') ;
    et la ca marche !!!!???
    C'est à n'y rien comprendre ??

  5. #5
    Membre émérite Avatar de Madfrix
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 326
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 326
    Points : 2 566
    Points
    2 566
    Par défaut
    J'ose à peine le dire mais il me semble que jadis maintenant que vous le dites...j'ai été confronté au meme phénomène

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut bizarre bizarre
    et maintenant j'ai remis header("Location: xxx.php?a=$a...) ;
    car pour etre complet j'ai aussi des paramètres et avec le ' ca n'interprete pas les $a ... et la ... CA MARCHE !!??
    J'avoue que je n'y comprends rien...

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut et encore ...
    en fait en mettant header("Location : xx.php") ; ca ne marche pas et en enlevant le " " devant le ":" ca marche : header("Location: xx.php") ;

    ??????????????

  8. #8
    Membre émérite
    Avatar de supersnail
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 719
    Points : 2 793
    Points
    2 793
    Par défaut
    Bah...

    C'est le protocole HTTP qui veut ça .

    En effet la syntaxe d'un header HTTP est uniquement:
    et non
    ou encore (bien sûr, Header et valeur sont à remplacer par tes vrais headers ).

    Et si tu pouvais mettre moins de points d'interrogation, ça serait bien

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Février 2010
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 122
    Points : 71
    Points
    71
    Par défaut effectivement
    Je suis d'accord que c'était au final un pb de syntaxe.
    Mais comme j'ai fait plein de manips entre temps j'ai l'impression qu'il y avait un autre pb mais je ne sais plus.

    Merci à la communauté des informaticiens !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redirection avec la fonction "header"
    Par Melaus dans le forum Langage
    Réponses: 9
    Dernier message: 07/10/2008, 15h36
  2. Redirection avec la fonction header
    Par bit_o dans le forum Langage
    Réponses: 3
    Dernier message: 09/02/2008, 00h56
  3. Redirection avec la fonction header
    Par Antho13 dans le forum Langage
    Réponses: 6
    Dernier message: 08/08/2007, 17h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo