Page login qui redirige chaque utilisateur vers sa page

kikzee Messages postés 87 Statut Membre -  
diablo13800 Messages postés 3469 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

ne marche pas:
 $name=$_POST['name'];
 $pwd=$_POST['pwd'];
 if($name!=''&&$pwd!='')
 {
   $query=mysql_query("select * from login where username='".$name."' and password='".$pwd."'") or die(mysql_error());
   $res=mysql_fetch_row($query);
   if($res)
   {
   if $_SESSION['name']=$_POST['admin']; ;
    header('location:admin.php');
 else if $_SESSION['name']=$name['res'];
    header('location:res.php');
 else if $_SESSION['name']=$name['tech'];
    header('location:tech.php');
 else $_SESSION['name']=$name['normal'];
    header('location:utili.php');
   }


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

1 réponse

  1. diablo13800 Messages postés 3469 Date d'inscription   Statut Membre Dernière intervention   1 872
     
    Bonjour,

    Normal... Name n'est pas un tableau et pourtant vous cherché quand même a lui trouve une valeur dedans...

    Votre code devrait plutôt ressemblez a ça
    if($res)
    {
       if ($res['statut']=='admin'){
          header('location:admin.php');
       }
        else if ($res['statut']=='res'){
          header('location:res.php');
       }
        else if($res['statut']=="tech"){
            header('location:tech.php');
        }
        else 
           header('location:utili.php');
    }
    


    Dans lequel Statut est le nom du champs dans votre BDD contenant le Statut des utilisateur.
    0
    1. kikzee Messages postés 87 Statut Membre 3
       
      ne marche pas
      session_start();
      if(isset($_POST['submit']))
      {
      mysql_connect('localhost','root','') or die(mysql_error());
      mysql_select_db('company') or die(mysql_error());
      $name=$_POST['name'];
      $pwd=$_POST['pwd'];
      if($name!=''&&$pwd!='')
      {
      $query=mysql_query("select * from login where username='".$name."' and password='".$pwd."'") or die(mysql_error());
      $res=mysql_fetch_row($query);
      if($res)

      {
      if ($res['admin']=='admin'){
      header('location:admin.php');
      }
      else if ($res['res']=='res'){
      header('location:res.php');
      }
      else if($res['tech']=="tech"){
      header('location:tech.php');
      }
      else
      header('location:utili.php');
      }
      }
      else
      {

      echo "<span class='warning'> votre username ou mot de passe est incorrect</span>";
      }
      }
      else
      {
      echo"<span class='error'>saisie votre username et password</span>";

      }

      ?>
      0
    2. diablo13800 Messages postés 3469 Date d'inscription   Statut Membre Dernière intervention   1 872
       
      Essayez avec ceci:

      if ($res[n]=='admin')


      Où n est le numero de la colonne Statut.
      0
    3. kikzee Messages postés 87 Statut Membre 3
       
      désole c marche pas la derniere page toujours qui s'affiche
      0
    4. diablo13800 Messages postés 3469 Date d'inscription   Statut Membre Dernière intervention   1 872
       
      Essayer de mettre le debugger avant vos redirection Il y a peut être une erreur ailleurs...
      par exemple mettez quelque chose comme ca:
         if ($res['admin']=='admin'){
            echo " Admin";
         }
          else if ($res['res']=='res'){
                  echo "";
         }
          else if($res['tech']=="tech"){
                   echo " tech";
          }
          else 
                  echo " Utilisateur";
      }
      vardump($res); 
      


      Et faite moi un copier coller de ce qu'il en sort
      0
    5. kikzee Messages postés 87 Statut Membre 3
       
      lorsque je tape tech tech login et mot de passe s"affiche utilisateur.php toujours le dernier ligne
      0