Verification du login dans la base

Signaler
Messages postés
31
Date d'inscription
samedi 12 mai 2007
Statut
Membre
Dernière intervention
8 juin 2007
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Bonsoir,
J'ai un probleme avec la redirection header ("location") et la verification du mot de passe
dans la base en PHP.
D'abord, j'ai un formulaire, qui de dans, il existe 2 radios boutons: 1 pour le CANDIDAT et l'autre pour l'ENTREPRISE,
avec un champ (Mot de passe) et un bouton Valider.
Mon probleme est que si je choisi le bouton radio CANDIDAT avec un mot de passe vrai je passe a la page consernat ce candidat
(et c'est correcte), mais si je choisi le bouton radio ENTREPRISE, il ne trouve pas le mot de passe de l'entreprise même si
correcte.
SVP aider moi.
Merci de me faire avance.




Voici mon code:


 


----------------------------------------------page d'authentification--------------------------
<form name="forom" method="post" action="session.php">
      
        
         Candidat        
          
        
         Entreprise
     
   Login :
      
   Mot de passe :
      
      
             
   </form>
-------------------------------------------------fin de la page---------------------------------------------


-----------------------------------------page consernant le candidat----------------------------------------
<?php
@$radio=$_POST['radio'];
if($radio=='rad2')
{
header ("Location: sessionsociete.php");
}
?>
<?php
$dbhost="localhost";
$user="root";
$password="";
$usedbd="mabase";


@$login=$_POST['login'];
$_SESSION['login']=$login;
@$motdepasse=$_POST['motdepasse'];
$_SESSION['motdepasse']=$motdepasse;


$connexion= mysql_connect($dbhost,$user,$password);
if(!$connexion)
{ echo "impossible de réaliser la connexion"; }
$db=mysql_select_db($usedbd,$connexion);
if(!$db)
{ echo "impossible de selectioner la base"; }


$j=mysql_query("select * from `diplome` WHERE login='$login' AND motdepasse='$motdepasse' ");
$g=mysql_num_rows($j);
if($g==1)
{
?>


<?php
$dbhost="localhost";
$user="root";
$password="";
$usedbd="mabase"; 
$connexion= mysql_connect($dbhost,$user,$password);
if(!$connexion)
{ echo "impossible de réaliser la connexion"; }
$db=mysql_select_db($usedbd,$connexion);
if(!$db)
{ echo "impossible de selectioner la base"; }


@$login=$_POST['login'];
$_SESSION['login']=$login;
@$motdepasse=$_POST['motdepasse'];
$_SESSION['motdepasse']=$motdepasse;


$requet="SELECT * FROM `diplome` WHERE login='$login' AND motdepasse='$motdepasse' ";
if($result = mysql_query($requet))
{ while($ligne = mysql_fetch_row($result)) {


  $nom = $ligne[0];  
  $prenom = $ligne[1];
  echo "Connecté en tant que: <style="font-weight: bold">$nom";
 }
}
else
{ echo "Erreur de requête de base de données."; }
?>
&nbsp;&nbsp;&nbsp;      [index.php ]
          &nbsp;

   &nbsp;

   Bienvenu <?php echo " $nom  $prenom"; ?>, votre session est ouverte.    

   &nbsp;

   Vous pouver naviguer dans ce site avec aucun problème.

   
<?php
   }
   else
   {
   echo 'Login ou mot de passe incorrecte !
   

   

   

   Pour ouvrir votre session, veuiller verifier de votre identification.
   

   

   

  

   

   Pour essayer de nouveau
  [dejainscrit.php clicker ici.]';
   } 
?>
---------------------------fin de la page---------------------------------------------


--------------------------------------page consernant l'entreprise-------------------------------------------
<?php
$dbhost="localhost";
$user="root";
$password="";
$usedbd="mabase";


@$login=$_POST['login'];
$_SESSION['login']=$login;
@$motdepasse=$_POST['motdepasse'];
$_SESSION['motdepasse']=$motdepasse;


$connexion= mysql_connect($dbhost,$user,$password);
if(!$connexion)
{ echo "impossible de réaliser la connexion"; }
$db=mysql_select_db($usedbd,$connexion);
if(!$db)
{ echo "impossible de selectioner la base"; }
$j=mysql_query("select * from `societe` WHERE loginsociete='$login' AND motdepassesociete='$motdepasse' ");
$g=mysql_num_rows($j);
if($g==1)
{
?>


<?php
$dbhost="localhost";
$user="root";
$password="";
$usedbd="mabase"; 
$connexion= mysql_connect($dbhost,$user,$password);
if(!$connexion)
{ echo "impossible de réaliser la connexion"; }
$db=mysql_select_db($usedbd,$connexion);
if(!$db)
{ echo "impossible de selectioner la base"; }


@$login=$_POST['login'];
$_SESSION['login']=$login;
@$motdepasse=$_POST['motdepasse'];
$_SESSION['motdepasse']=$motdepasse;


$requet="SELECT * FROM `societe` WHERE loginsociete='$login' AND motdepassesociete='$motdepasse' ";
if($result = mysql_query($requet))
{ while($ligne = mysql_fetch_row($result)) {


  $nom = $ligne[0];  
 
  echo "Connecté en tant que: <style="font-weight: bold">$nom";
 }
}
else
{ echo "Erreur de requête de base de données."; }
?>
je suis une societe.
[index.php ]
&nbsp;

&nbsp;

Bienvenu <?php echo " $nom"; ?>, votre session est ouverte.

&nbsp;

Vous pouver naviguer dans ce site avec aucun problème.

<?php
   }
   else
   {
   echo 'Login ou mot de passe incorrecte !
   

   

   

   Pour ouvrir votre session, veuiller verifier de votre identification.
   

   

   

  

   

   Pour essayer de nouveau
  [dejainscrit.php clicker ici.]';
   } 
?>




------------------------------fin de la page---------------------------------------------

2 réponses

Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
7
Salut,

c'est parceque tes variables POST ne sont pas renvoyées lors de la redirection... Donc, dans le cas de l'entreprise, elles sont perdues!!!

Il faut que tu structures autrement ton système de connexion :
un seul script de connexion (qui peut faire des actions différentes selon le type d'utilisateur)
puis, tu redirige vers la page adéquate...
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
39
Salut,

et t'as envoye un mp a tout les users de codes-sources pour avoir une reponse ??? on est 800 000 !!! nan mais serieux, tu postes sur le forum ! pas en MP ! et tu ne fais pas de c/c de ton code pour l'envoyer en MP !

Une recherche sur exalead vous aurait peut-etre evit