1 pièce(s) jointe(s)
[AJAX] AJAX erreur code 0 sur une méthode POST
Bonjour à tous.
Je suis sur un petit projet avec mon école: du WEB (:bug:). 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" ^^ )
Code:
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");
} |
Je reçois une erreur de type 0 et j'ai une chaîne vide dans le reqStatusText.
Vient ensuite ma page testLogin.php:
Code:
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 :
Pièce jointe 140505
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.