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


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut Redirection
    bonsoir a tous
    aprés plusieurs recherche chez ami gopgle et dans notre forum
    je me permetez d'appelle a votre aide
    donc j'ai une page index.php qui'est une page d'authentification
    aprés que l'utilisateur soit logué selon sont catégorie je veux faire une redirection vers la page concerné
    par exemple:
    si categorie =administrateur >>>redirection vers la page admin.php
    si categorie =assistante >>>redirection vers la page assistantephp
    si categorie =utilisateur >>>redirection vers la page utilisaeur.php
    si non(cas d'erreur) >>>redirection vers la page erreur.php
    j'ai déja testé avec: CODE]header('Location: pageconcerné.php');[[/CODE]mais ça ne marche pas
    et merci d'avance pour votre aide

  2. #2
    Rédacteur
    Avatar de Halleck
    Homme Profil pro
    Consultant PHP
    Inscrit en
    Mars 2003
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Consultant PHP

    Informations forums :
    Inscription : Mars 2003
    Messages : 597
    Points : 878
    Points
    878
    Par défaut
    Si le header Location ne marche pas, c'est que tu as déjà envoyé des éléments chez le client.

    En effet, comme son nom l'indique, cette page envoie des entêtes à la page client. Pour que le client interprète correctement ces entêtes, il faut qu'il les réceptionne en premier.

    Pour tester, essaye de mettre le header Location en début de ton code et confirme nous que ça ne marche toujours pas

    PS : puisqu'il s'agit de faire une redirection selon le log, n'oublie pas d'ajouter un exit; après le header location, comme indiqué dans la doc...
    Zend PHP Certified Engineer, Certifié Symfony2
    blog : blog.lepine.pro
    Secrétaire de l'AFUP (Association des Utilisateurs de PHP)

  3. #3
    Membre régulier Avatar de agnaou
    Inscrit en
    Février 2009
    Messages
    289
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Février 2009
    Messages : 289
    Points : 99
    Points
    99
    Par défaut
    bonjours a tous et merci pour vous reponses
    mon code est comme ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    if(trim($_SESSION['categorie'])=='admin' ||trim($_SESSION['categorie'])=='assistante'){ 
    	header('Location: admin.php'); 
     
         }
        if(trim($_SESSION['categorie'])=="user" ){
     
    	header('Location: user.php');
     
          }
         if((trim($_SESSION['categorie'])!="admin")
    	    and (trim($_SESSION['categorie'])!="user")
    		or empty($_POST['pseudo'])
    		or empty($_POST['passe'])){
           header('Location: Erreur.php');
     
             }
      }
    pour les deux premiers ca marche pour la troisieme cas il ma fiche une page blanche different de mon image Erreur.php
    sachant que c'est ce sont les cas possible
    et pour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST['pseudo'] et $_POST['passe']
    ce sont des variables contient des valeurs login et pwd d'utilisateur et merci d'avance

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Points : 40
    Points
    40
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    if(trim($_SESSION['categorie'])=='admin' ||trim($_SESSION['categorie'])=='assistante'){ 
    	header('Location: admin.php'); 
     
         }
        else if(trim($_SESSION['categorie'])=="user" ){
     
    	header('Location: user.php');
     
          }
           else {
           header('Location: Erreur.php');
     
             }
      }
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    switch ($_SESSION['categorie'])
    {
       case 'admin':
       case 'assistante': 
             $redirection = 'Location: admin.php';
             break;
       case 'user' : 
             $redirection = 'user.php';
             break;
       case default : 
             $redirection = 'Erreur.php';
    }
     
       header("Location: $redirection");
    Cela simplifiera ton code, de plus j'ai remarqué que toutes tes pages commencent par une minuscule .. peut être "Erreur.php" est en minuscule ?

Discussions similaires

  1. [Strategie]Redirection après un formulaire
    Par kyser91 dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 19/03/2004, 15h15
  2. redirection de trames
    Par Fry dans le forum Développement
    Réponses: 2
    Dernier message: 06/01/2004, 13h31
  3. [VB.NET]Double redirection.
    Par CammCamm dans le forum ASP.NET
    Réponses: 9
    Dernier message: 24/11/2003, 15h11
  4. [VB6] probleme de redirection d'une commande DOS
    Par WriteLN dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 10/06/2003, 09h36
  5. [reseaux] redirection de flux
    Par Olive1808 dans le forum Programmation et administration système
    Réponses: 2
    Dernier message: 12/08/2002, 09h24

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