Page 1 sur 1

Page de login

Posté : 24 mars 2011, 17:28
par prohand
Bonjour,

J4ai une page de login en pdo qui va me chercher les identifiants sur ma base sql hors quand je rentre les bons identifiants il me renvoit sur la même page avec le nom d'utilisateur que j'ai rentré ( normal je lui ai indiqué de le faire ).
Mais normalement il devrait m'indiquer login ok dans ma page.

Voici le code :
<?php
session_start();
  $login = $_POST["login"] ;
  $pwd = $_POST["pass"] ;
?>
<form action="login.php" method="post">
<center><img src="images/webmail.png"> 
<TABLE BORDER="1"><tr><th><center>Login : </center><input type="text" name="login" value="<?php echo($login);?>" /></th></tr><br />
    <tr><th><center>Mot De Passe : </center><input type="password" name="pass" value="" /></th></tr><br />
    <tr><th><input type="submit" value="envoyer"></tr></th>
</form><center></TABLE> </center>
<?php
function VerifLogin($pass,$login)
{
        include('config.php');
		$connexion = new PDO('mysql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
		$sql=$connexion->query("SELECT login,pwd FROM membres"); // on va chercher tous les membres de la table qu'on trie par ordre croissant
		$sql->setFetchMode(PDO::FETCH_OBJ); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet
		while( $data = $sql->fetch() ) 
		
        {
           if($data->pwd==$pass) 
           {
             if($data->login==$login) 
              {
               $sql->closeCursor();
		       echo("login OK");
		       return true;
		      }
			  else
			  {
			   echo("Le nom d'utilisateur n'est pas correct");
			  }
		   }
		    else
		   {
		    echo("Le mot de passe n'est pas correct");
		   }
				
		}
		$sql->closeCursor();
		return false;
}

	?>
Merci

Re: Page de login

Posté : 24 mars 2011, 18:14
par moogli
Tu l'utilise pas la fonction que tu a creer ....

@+

Re: Page de login

Posté : 24 mars 2011, 18:44
par AB
Il est mal organisé ton code. Un tuto ici

Bon c'est fait avec mysql, mais reprend l'organisation du code et converti si besoin les requêtes pour pdo, ainsi tu auras une bonne base de travail :wink:

Re: Page de login

Posté : 24 mars 2011, 21:01
par prohand
J'ai utilisé la fonction mais toujours pareil.
<?php
    $NomUtil="";
	$MP="";
    if(isset($_POST['tbx_Login'])==true)
    {
		$NomUtil=$_POST['tbx_Login'];
		$MP=$_POST['tbx_pass'];
	
		if(VerifLogin($NomUtil,$MP)==true)
		{
			$_SESSION['LoginOK']=1;
			//Login OK redirection sur une nouvelle page
			header("location:EnvoiMail.php");
			
		}
		else
		{
			$_SESSION['LoginOK']=0;
			echo('login incorrect');
		}
		
		

    }
?>

<form action="login.php" method="post">
<center><img src="images/webmail.png"> 
<TABLE BORDER="1"><tr><th><center>Login : </center><input type="text" name="tbx_login" value="<?php echo($tbx_login);?>" /></th></tr><br />
    <tr><th><center>Mot De Passe : </center><input type="password" name="tbx_pass" value="" /></th></tr><br />
    <tr><th><input type="submit" value="envoyer"></tr></th>
</form><center></TABLE> </center>
<?php
function VerifLogin($pass,$login)
{
        include('config.php');
		$connexion = new PDO('mysql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
		$sql=$connexion->query("SELECT login,pwd FROM membres"); // on va chercher tous les membres de la table qu'on trie par ordre croissant
		$sql->setFetchMode(PDO::FETCH_OBJ); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet
		while( $data = $sql->fetch() ) 
		
        {
           if($data->pwd==$pass) 
           {
             if($data->login==$login) 
              {
               $sql->closeCursor();
		       echo("login OK");
		       return true;
		      }
			  else
			  {
			   echo("Le nom d'utilisateur n'est pas correct");
			  }
		   }
		    else
		   {
		    echo("Le mot de passe n'est pas correct");
		   }
				
		}
		$sql->closeCursor();
		return false;
}

	?>

Re: Page de login

Posté : 24 mars 2011, 21:25
par moogli
si tu met un header qui t'envoi sur une autre page tu ne verra pas le message que tu affiche !


@+