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 via header() [PHP 5.0]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut Redirection via header()
    Bonjour,

    Lorsque l'on souhaite rediriger un visiteur vers une page après une action, par exemple après le remplissage d'un formulaire valide, on utilise généralement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <?php
    header("Location: http://www.example.com/"); /* Redirection du navigateur */
    exit;
    ?>
    Et d'après la documentation PHP :
    Le deuxième type d'appel spécial est "Location:". Non seulement il renvoie un en-tête au client, mais, en plus, il envoie un statut REDIRECT (302) à Apache. Du point de vue de l'auteur de script, cela importe peu, mais pour ceux qui connaissent les rouages internes d'Apache, c'est primordial.
    Hors si l'on interprète le code 302, il signifie :
    302 - Moved Temporarily - Document déplacé de façon temporaire

    Ce code 302 est-il pertinent ?
    Dans cette situation, il n'y a en effet aucun document déplacé.
    Le 303 ne serait-il pas plus approprié ?
    303 - See Other - La réponse à cette requête est ailleurs
    Qu'en pensez-vous ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    C'est d'autant plus subtile que ca a changé

    302 "Found" indique que l'adresse demandée est bonne mais que pour le moment, il est demandé d'aller ailleurs.
    307 "Temporary Redirect" indique la reponse est sur une autre page, la requete est donc répétée.
    303 "See other" repete egalement la requete mais en convertissant en GET.

    Dans notre cas c'est bien 302, la requête a bien été traité mais on nous demande d'aller voir ailleurs maintenant.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut
    Extra merci.

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

Discussions similaires

  1. redirection via header
    Par Royade dans le forum Langage
    Réponses: 1
    Dernier message: 10/12/2012, 19h09
  2. redirection multiple : header ?
    Par jani dans le forum Langage
    Réponses: 2
    Dernier message: 01/06/2007, 10h54
  3. Probleme de redirection avec Header
    Par ehmppowa dans le forum Langage
    Réponses: 7
    Dernier message: 28/12/2006, 19h26
  4. [PHP-JS] Problème de redirection avec header
    Par pierrot10 dans le forum Langage
    Réponses: 6
    Dernier message: 02/09/2006, 19h01
  5. Réponses: 16
    Dernier message: 01/02/2006, 20h09

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