Bonjour à tous.
Je suis sur un petit projet avec mon école: du WEB (). C'est quelque chose que je n'aime pas vraiment mais j'ai décidé de faire des efforts. Qui dit effort, pour moi, dit que j'essaye de me familiarisé avec l'ajax et le javascript.
Je vous explique explique dans les grandes lignes mon problème:
J'ai des utilisateurs dans une base de donnée. Sur la page d'accueil l'utilisateur peut se logger. Vous l'aurez compris, je souhaite que mon utilisateur se connecte sans qu'il est besoin de recharger la page. Mon erreur actuellement est une erreur de code 0. J'ai pu voir sur internet qu'il était possible que cela viennent du chemin du fichier mais j'ai essayer plusieurs types de chemin sans sucés.
Mieux vaut mes petits bout de scripts que de grande paroles ... :
Ma page navigation (ou l'on trouve le form). Rien a déclarer, je récupère bien le pseudo et le mot de passe dans le javascript
Ma fonction ajax: (Pour le moment je souhaite seulement tester le bon fonctionnement avec des paramètre dit "bidon" ^^ )
Je reçois une erreur de type 0 et j'ai une chaîne vide dans le reqStatusText.
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 //Fonction qui permet de checker sans recharger la page que le pseudo est le mot de passe sont correct function testIdentifiant (){ //On créer notre objet XMLHttpRequest var req = creerInstance(); /* On récupère les données du formulaire */ var pseudo =document.login.pseudo.value; var motdepasse =document.login.motdepasse.value; //Permet de tester l'état de la requete. Voir plus bas pour l'utilité de chaque code req.onreadystatechange = function(){ /* Si l'état = terminé */ if(req.readyState == 4){ /* Si le statut = OK */ if(req.status == 200){ /* On affiche la réponse */ alert(req.responseText); } else{ alert("Error: returned status code " + req.status + " " + req.statusText); } } } var coucou = "lol" //On prépare la chaine de caractère que l'on va envoyer à la page php pseudo = "pseudo="+coucou; //alert("Je suis après le donnée user"); //On ouvre une connexion dans laquelle on definit la méthode d'envoie des données, le chemin de la page de traitement, et enfin si on soihaite que cela se fasse asynchron ou non req.open("POST","testLogin.php","true"); //alert("Je suis après l'ouverture"); //Permet d'envoyer les parametre dans un format encodré. req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); //alert("Je suis après le header"); req.send(pseudo); //alert("Je suis après le send"); }
Vient ensuite ma page testLogin.php:
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php $pseudo = $_POST["pseudo"]; echo $pseudo; ?>
Voila mes bout de code. Ensuite vient mon architecture de fichier (pour tester si cela venais de la j'ai mis ma page "testLogin.php" dans le même dossier que ma fonction AJAX
Voici ma structure si ça peut aider à résoudre mon beug :
EDIT: J'ai dorénavant l'état de ma requête qui est à 4. J'ai l'impression qu'a aucun moment elle ne passe à 200...Bizarre
En vous remerciant d'avance.
Bien cordialement. Batou.
Partager