Partage
  • Partager sur Facebook
  • Partager sur Twitter

Login php mysql

    9 avril 2017 à 15:32:11

    Salut, 

     J'ai réaliser des scripts php pour pouvoir faire un login . j'ai créé une base de données mysql avec à l'intérieur une table user_admin qui contient un champ admin_name et un champ admin_password. Met quand je clique sur Log in après avoir saisi les données de connexion , rien ne se passe.

    <?php
    include("dbconnection.php");  //connect the connection page
    
    if(isset($_POST['admin_login'])) { // if the form  submitted
        $admin_name=$_POST['admin_name'];
    	$admin_password=$_POST['admin_password'];
    	$admin_query="SELECT * FROM user_admin WHERE admin_name='$admin_name' AND admin_password='$admin_password' ";
    	$result=mysqli_query($dbcon,$admin_query);
    	if (mysql_num_rows($result)>0){
    		session_start();//session starts here
    		$_SESSION['admin_name']=$_POST['admin_name'];		
    		header('Location:index.php');
    	   }
    	else{echo"Utilisateur inconnu";
    		header('location:login.php');
    	}
    }
    ?>
    
    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <!-- Meta, title, CSS, favicons, etc. -->
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
      </head>
      <body>
                <form method="post" action="login.php" >
                  <h1>Login Form</h1>
                  <div>
                    <input type="text" class="form-control" placeholder="Username" name="admin_name" required  />
                  </div>
                  <div>
                    <input type="password" class="form-control" placeholder="Password" name ="admin_password" required />
                  </div>
    			  
                  <div>
                    <a class="btn btn-default submit" name="admin_login">Log in</a>
                  </div>
    			</form>
    	</body>
     </html>



    Pouvez-vous voir avec moi, ce qui ne marche pas ?

    Merci bien

    • Partager sur Facebook
    • Partager sur Twitter
      9 avril 2017 à 15:45:48

      Le mélange de fonctions mysqli_* et mysql_* ça ne pourra jamais fonctionner. Remplaces mysql_num_rows par son équivalent mysqli. Pour faire ça proprement, il faudrait un mysqli_fetch_*.

      Et tu as 2 injections SQL sur ton SELECT faute de la préparer ou même d'échapper (mysqli_real_escape_string)

      -
      Edité par julp 9 avril 2017 à 15:57:57

      • Partager sur Facebook
      • Partager sur Twitter
        9 avril 2017 à 15:52:44

        julp a écrit:

        Le mélange de fonctions mysqli* et mysql* ça ne pourra jamais fonctionner.

        Et tu as 2 injections SQL sur ton SELECT.


        bonjour,

        Il n'arrive même pas jusque la il essaie de soumettre son formulaire avec un lien hypertext :o

        • Partager sur Facebook
        • Partager sur Twitter
        "Il est hélas devenu évident aujourd’hui que notre technologie a dépassé notre humanité"  A.E.
          9 avril 2017 à 16:07:25

          J'ai résolu le problème .Oui en effet , j'ai soumi le form avec un lien hypertext ( en fait je travaille avec un template, du coup j'y ai pas trop fait attention :p ) et aussi le mélange mysql et mysqli , forcément ca collera pas :p

          Mercii  ;)

          -
          Edité par Nabil_2i 9 avril 2017 à 16:11:19

          • Partager sur Facebook
          • Partager sur Twitter

          Login php mysql

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown