Bonjour a tous,
je viens d'écrire un code ajax pour que je puisse authentifier en utilisant un formulaire d'authentification avec champ login et champ mot de passe afin d'envoyer ces deux paramètre au serveur web pour les vérifier avec base de donnée mysql si l'authentifcation est réussite j'ai une redirection vers une page entete.php et si les coordonnées sont invalides j'affiche une alerte erreur :
c'est le code html:
la page verifauth.php contient le code suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 <script type="text/javascript" src="jquery.js"></script> <script> $(document).ready(function(){ $('#login').on('submit',function(event) { var val=document.getElementById('emailm'); var vall=document.getElementById('passw'); $.ajax({ url:'verifauth.php', //target file data:"{email:'"+val+"',pass:'"+vall+"'}", //translate data structure and object type:'POST', /*contentType: "application/json; charset=utf-8", dataType: "json",*/ success:function(data){ if(data=="success"){ document.location="entete.php"; }else{ alert('erreur'); } //console.log(data); //$("#success").show(); // Show Success Message== }, error:function(data){ $("#erreur").css({'display':'block','visibility':'visible'}); //$("#error").show().fadeOut(5000); //===Show Error Message==== } }); event.preventDefault(); //To Avoid Page Refresh and Fire the Event "Click" }); }); </script> </head> <body> <div id="global"> <div id="gauche"> <!--onsubmit="return verifierr();"--> <form id="login" > <p id="entete">Déja Client</p> <div id="erreur"> <p>Cette adresse email n'est pa reconnue.<br/>Si vous n'êtes pas encore inscrit,merci d'utiliser le formulaire d'inscription ci-contre.</p> </div> <div> <p class="lab"><span style="padding-right:50px;"><label>Adresse e-mail:</label></span><span><input type="text" name="email" id="emailm" size="40px"/></span></p> <p class="lab"><span style="padding-right:60px;"><label>Mot de passe:</label></span><span><input type="text" name="pass" id="passw" size="40"/></span></p> <span style="padding-left:300px;"><a href="#" >Mot de passe oublié?</a></span><br/><br/> <input type="submit" name="conn" value="Se connecter" style="margin-left:150px;"/> </div> </form>
mais lors de l'exécution et dans tout les cas si je mets des coordonnées exacte ou erroné il m'affiche toujours erreur c'est a d il exécute toujours la partie else de success:function(data) et si j'enleve le commentaire sur /*contentType: "application/json; charset=utf-8",
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 <?php SESSION_START(); ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Document sans titre</title> </head> <body> <?php /*header('Content-Type: application/json; charset=utf-8'); /*echo 'Thank you '. $_POST['firstname'] . ' ' . $_POST['lastname'] . ', says the PHP file';*/ if(isset($_POST)){ $email=urldecode($_POST['email']); $password=urldecode($_POST['pass']); print_r ($email); print_r ($password); $conn=mysqli_connect('localhost','root','admin','test'); $req=mysqli_query($conn,'select * from visit where email="'.$email.'" and motpasse="'.$password.'"'); if(mysqli_num_rows($req)==0){ /*header('location:authentifi.php'); $_SESSION['erreur']=true;*/ $reponse= "faild"; }else{ $row=mysqli_fetch_assoc($req); $_SESSION['email']=$row['email']; $_SESSION['nom']=$row['nom']; $_SESSION['prenom']=$row['prenom']; //$_SESSION['adresse']=$row['adresse']; /*header('location:entete.php'); //echo $_SESSION['nom'].' '.$_SESSION['prenom'];*/ $reponse= "success"; mysqli_close($conn); } }else{ $reponse= "Tous les champs ne sont pas parvenus"; } echo(json_encode($reponse)); ?>
dataType: "json",*/ il execute toujours la partie error:function(data) meme si j'introduits les coordonnéees valides
j'ai passée des jours sans trouvé la solution est ce que vous pouvez me dire quel est l'astuce vue que je suis débutante avec AJAX![]()
Partager