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 :

Problème de redirection [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut Problème de redirection
    Bonjour,

    J'ai ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function requireLogin() {
        if ( empty( $_SESSION['userId'] ) ) {
            $_SESSION['returnTo'] = $_SERVER['REQUEST_URI'];
    	Registry::getObject( 'response' )->redirect( './?rt=users/login/loginform', 401 );
        }
    }
    et une classe Response contenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public function redirect( $url, $status = 302 ) {
            //...
            header( 'Location: ' . $url );
            exit( 0 );
    }
    Classe Response complète.

    La redirection ne fonctionne pas. Avec un header( 'Location: ' . './?rt=users/login/loginform' ); dans la première fonction la redirection fonctionne. Je ne comprend pas ce qui se passe.

  2. #2
    Membre Expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    './?rt=users/login/loginform'
    Il faudrait peut être mettre un nom à la page de redirection (genre login.php?...etc..) et non ./
    Là, tu laisses le système de fournir ce nom automatiquement, peut être que le nom sera celui où le script est exécuté, c'est à dire le nom où se trouve cette fonction requireLogin().


    Essai ceci (provisoirement) pour voir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function redirect($url, $status = 302) {
        echo 'Une redirection : '.$url;
        exit();
    }
    Par ailleurs, est il normalisé (si on peu dire) de renvoyer une entête de type 400, 401, 404, 500 au niveau d'une redirection ?
    Ne faudrait il pas renvoyer une entête de type 301, 302 ou 303 uniquement, car c'est une redirection ?

    Les entêtes de type 404 ou 500, etc .. c'est théoriquement lié à un contenu, une page, non ?
    Si on prévoit une page genre 404.php, on rajouterait une entête de type 404 à cette page.

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut
    Citation Envoyé par RunCodePhp Voir le message
    Par ailleurs, est il normalisé (si on peu dire) de renvoyer une entête de type 400, 401, 404, 500 au niveau d'une redirection ?
    Ne faudrait il pas renvoyer une entête de type 301, 302 ou 303 uniquement, car c'est une redirection ?

    Les entêtes de type 404 ou 500, etc .. c'est théoriquement lié à un contenu, une page, non ?
    Si on prévoit une page genre 404.php, on rajouterait une entête de type 404 à cette page.
    Ah ah ! Le problème était là : avec le code 401, la redirection ne fonctionne pas. Avec 302 la redirection fonctionne sans problème. Merci.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/04/2006, 16h16
  2. Problème de Redirection
    Par pirouette_07 dans le forum Apache
    Réponses: 1
    Dernier message: 30/03/2006, 13h50
  3. [Cookies] Problèmes de redirection
    Par mogway95 dans le forum Langage
    Réponses: 6
    Dernier message: 19/02/2006, 00h13
  4. Problème de redirection d'index
    Par Bluelane dans le forum Apache
    Réponses: 8
    Dernier message: 16/09/2005, 17h50
  5. Problème de redirection avec window.location
    Par Kosti dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 30/11/2004, 18h31

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