Php/mysql erreur dans mon code,

mdico Messages postés 100 Statut Membre -  
Xil Messages postés 351 Statut Membre -
Bonjour,
j'ai une petite erreur dans mon code,
je souhaite qu'il m'affiche une fois me conecter avec mon login+motde passe "bienvenue à JESEF XFAR.
donc je vous pris de me corriger cette erreur.
bye
voila le code
<?php session_start();

//test si la variable de session user existe pour verifier si l'authentification a ete effectuée
if(!isset($_SESSION['user'])){
echo "<center>Il faut être authentifié !</center>";
echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";

exit();
}
?>
<?php
$_SESSION['categorie']=$_POST['categorie'];
$_SESSION['Login']=$_POST['Login'];
$_SESSION['pw']=$_POST['pw'];
$c=$_POST['categorie'];
if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';}elseif($c==3){$t='stage';} else{$t='lieu';}
$link=mysql_connect('localhost','root','root');
if (!$link)
{
die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
}
$db=mysql_select_db('gestionstage',$link);
if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
$Login=$_POST['Login'];
$query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
$resultat=mysql_query($query);
if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
echo"<a href='index.php'> Retour </a>";}
else
$row=mysql_fetch_array($resultat);
if($row['pw']=$_POST['pw']){
echo "Mot de Passe Incorrect!";
echo"<a href='index.php'> Retour </a>";}
else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";

}
?>
Configuration: Windows XP
Firefox 2.0.0.16

10 réponses

  1. Xil Messages postés 351 Statut Membre 257
     
    Bonjour,

    Pensez à indiquer l'erreur qui s'affiche à l'exécution s'il y'en a une.

    if($row['pw']=$_POST['pw']){ 
    


    Il y'a une erreur là.
    c'est != et non = .

    Et par sûreté, le mot de passe devrait être crypté dans la base de donnée.
    0
  2. mdico Messages postés 100 Statut Membre
     
    merci de m'avoir repondu.
    voilà ce qu'il m'affiche
    Identifiant Inconnu! Retour
    Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 48

    ET DANS CETTE LIGNE 48 QUE J AI MIS != ET NON = MAIS VOILA LE RESULTA QU IL DONNE . ET PUIS JE SUIS SUR DE MON MOT DE PASSE ET LOGIN.
    merci
    0
  3. mdico Messages postés 100 Statut Membre
     
    j'attend une suite svp je vous en pris aide moi
    0
  4. Absinthe06 Messages postés 113 Statut Membre 11
     
    C'est normal, dans le cas ou ton identifiant est inconnu, $row n'est pas déclaré, donc php génère une erreur. Remplace la fin de ton code par :

    if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
    echo"<a href='index.php'> Retour </a>";}
    else {
    $row=mysql_fetch_array($resultat);
    if($row['pw']=$_POST['pw']){
    echo "Mot de Passe Incorrect!";
    echo"<a href='index.php'> Retour </a>";}
    else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";
    }
    }
    ?>

    et rééssaye ;)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. mdico Messages postés 100 Statut Membre
     
    merci pour votre intervention mais je ne suis pas encore satisfait dans la mesure ou il m'affiche :
    Identifiant Inconnu! Retour

    ALORS QUE MON IDENTIFIANT EST CORRECT ET MDP AUSSI. JE SOUHAITE QU IL MAFFICHE bienvenbu jessef amseff mais sa ne fait pas le cas.
    je compte sur vous
    0
  7. mdico Messages postés 100 Statut Membre
     
    svp j'attend une suite aide moi
    0
  8. Xil Messages postés 351 Statut Membre 257
     
    Repost ton code après les modifications indiquées, qu'on voit s'il reste une erreur.
    0
  9. mdico Messages postés 100 Statut Membre
     
    ok
    merci
    le meme probleme persiste
    voila le code il m'affiche identifiant inconnu alors que le login+ mdp tout est correct.
    voila le code et son resultat

    <?php session_start();

    //test si la variable de session user existe pour verifier si l'authentification a ete effectuée
    if(!isset($_SESSION['user'])){
    echo "<center>Il faut être authentifié !</center>";
    echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";

    exit();
    }
    ?>
    <?php
    $_SESSION['categorie']=$_POST['categorie'];
    $_SESSION['Login']=$_POST['Login'];
    $_SESSION['pw']=$_POST['pw'];
    $c=$_POST['categorie'];
    if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';}elseif($c==3){$t='stage';} else{$t='lieu';}
    $link=mysql_connect('localhost','root','root');
    if (!$link)
    {
    die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
    }
    $db=mysql_select_db('gestionstage',$link);
    if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
    $Login=$_POST['Login'];
    $query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
    $resultat=mysql_query($query);
    if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
    echo"<a href='index.php'> Retour </a>";}
    else {
    $row=mysql_fetch_array($resultat);
    if($row['pw']=$_POST['pw']){
    echo "Mot de Passe Incorrect!";
    echo"<a href='index.php'> Retour </a>";}
    else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";
    echo"<a href='menu.php'> Continuer </a>";
    }}
    ?>
    </div>
    </body>
    0
    1. Xil Messages postés 351 Statut Membre 257
       
      Toujours la même erreur :
      if($row['pw']=$_POST['pw']){ 


      Correction :
      if ($row['pw'] != $_POST['pw']) { 
      0
  10. mdico Messages postés 100 Statut Membre
     
    oui je l'ai fais mais sans ne change rien
    aide moi svp
    meme s'il faut proposer quelque choses
    je compte à vous tous
    0
  11. mdico Messages postés 100 Statut Membre
     
    meme si je n'ai pas un mot de passe et que je clique sur ok seulement il m'affiche ce resultat donc seulement y'a un autre probleme.

    Identifiant Inconnu! Retour
    0
    1. Xil Messages postés 351 Statut Membre 257
       
      Ajoute :
      echo $query."<br />";
      

      juste après :
      $query="select Nom,Prenom,Login,pw from $t where Login='$Login'"; 
      


      Et dis nous ce qui s'affiche.
      0