Verification du login dans la base

elksibi Messages postés 31 Date d'inscription samedi 12 mai 2007 Statut Membre Dernière intervention 8 juin 2007 - 24 mai 2007 à 21:37
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 25 mai 2007 à 07:01
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

J_G Messages postés 1406 Date d'inscription mercredi 17 août 2005 Statut Membre Dernière intervention 28 août 2007 10
24 mai 2007 à 22:08
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...
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
25 mai 2007 à 07:01
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
0
Rejoignez-nous