cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008
-
29 août 2008 à 09:16
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
4 sept. 2008 à 08:06
Bonjour a tous
voila j'ai un probleme dans mon code sur une ligne seulement
xhr.send("idAuteur2="idAuteur2&"idAuteur="+idAuteur);
quelqu'un saurait qu'est qui ne vas pas dans cette syntaxe ??
je sais que c'est possible de faire passer plusieur element avec cette méthode mais j'arrive pas a trouvé la bonne syntaxe HELP SVP
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 29 août 2008 à 13:52
bonjour,
"normalement" ça devrait fonctionner !
xhr.send("idAuteur2="+idAuteur2+"&idAuteur="+idAuteur);
maintenant... soit tu ne fais pas tout à fait comme ça, soit ton erreur est due
à une variable non déclarée, soit ton erreur est "ailleurs",
soit... mais au fait c'est quoi l'erreur ?
une erreur de syntaxe ? une erreur de comportement ? une erreur de logique ? ....
tu as un message d'erreur ? un résultat inattendu ? pas de résultat du tout ?
on n'a pas assez de billes à priori....
déjà :
FireFox
, regarder la "console d'erreurs"
Outils / Console d'erreurs
et mieux : télécharger mon Site] [M'écrire], <!--
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 3 sept. 2008 à 11:00
et ben... là c'était coté php qu'on "traitait mal" le $_POST
idAuteur n'étant pas défini, il y avait une erreur,
coté php, puisque coté javascript c'est une chaîne de caractères
Cordialement Bul [mon Site] [M'écrire], <!--
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 29 août 2008 à 10:31
erf alors oui elles sont déclarés
idauteur = sel.options[sel.selectedIndex].value;
idauteur2 = sel.options[sel.selectedIndex].value;
EN FAITE TOUT marche sauf la ligne xhr.send
et avec ce que tu m'as mis sa ne marche pas : /
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 29 août 2008 à 13:58
si ça se trouve, par exemple, tu fais un envoi en method get ?
comme on n'a pas l'open...
car là les paramètres doivent être mis derrière l'url pas dans le send
CordialementBul[mon Site][M'écrire], <!--
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 29 août 2008 à 16:28
alors la methode j'ai testé les deux sa ne change rien(post,get) mais bon maintenant je sais directement laquelle utilisé ensuite
je sais que cela fonctionne au nivo de mes variables j'ai fais un alert idauteur, et d'idauteur2 le resutlat apparait, mais
*/
function go(){
var xhr = getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function(){
if(xhr.readyState 4 && xhr.status 200){
leselect = xhr.responseText;
// method POST
xhr.open("POST","ajax_livre2.php",true);
// ne pas oublier ça pour le post
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
// poster les arguments
// ici, l'id de l'ordinateur
sel = document.getElementById('auteur');
idauteur = sel.options[sel.selectedIndex].value;
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 29 août 2008 à 16:52
>>'ai testé les deux sa ne change rien(post,get)
ah ben si ! ça ne peut pas ne pas changer !! c'est l'un ou l'autre !
et si les paramètres sont mal transmis, ça ne peut que queuter...
et/ou alors l'erreur est ailleurs ! ( dans le php ? va savoir )
tu ne réponds d'ailleurs pas ! je me cite : mais au fait c'est quoi l'erreur ?
CordialementBul[mon Site][M'écrire], <!--
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 1 sept. 2008 à 08:41
ben le truc qui se passe c'est que la fonctionne fonctionne si j'ai les elements séparé, si dans la requete xhr.send je ne passe qu'une valeur sa fonctionne dès que j'essais de mettre les deux sa ne fonctionne plus. mais séparement les deux fonctionnent et la fonction escape ne fonctionne pas :(
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 sept. 2008 à 09:45
>>je ne passe qu'une valeur sa fonctionne dès que j'essais de mettre les deux sa ne fonctionne plus
mais encore ?
ça plante coté javascript ?
c'est le serveur qui ne reçoit pas les 2 variables ?
>> fonction escape ne fonctionne pas
comment ça ? c'est à dire que escape ou pas, le résultat est le même ?
petoelTea suggérait une piste, car on n'a que peu de billes !
et surtout pas tout ce qu'il faut pour voir si l'erreur est ailleurs de ce que tu nous montres.
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 1 sept. 2008 à 11:58
erf désolé de mal exprimé mon probleme
ben il ne se passe absolument rien,
lorsque j'utilise la fonction : " xhr.send("idAuteur="+idAuteur); "
TOUT MARCHE j'ai aucune erreur, j'ai mes valeurs qui apparaissent en temps réelle, SUPER !!
Maintenant je veux rajouté l'élement " xhr.send("idauteur2="+idauteur2+"&idauteur="+idauteur); "
finis sa marche pas, et aucun message d'erreur n'apparait alors je me dis que c'est mon "idauteur2" qui bloque alors je fais
" xhr.send("idAuteur2="+idAuteur2); " sa fonctionne aussi.
Donc je le sais que mon erreur se situe qu'as un endroit :
" xhr.send("idauteur2="+idauteur2+"&idauteur="+idauteur); ""
alors tout se que vous m'avez ennoncer semble logique, mais malheuresement pour ma tête(qui surchauffe depuis 5 jours) sa ne fonctionne toujours pas .
la fonction escape fonctionne mais qu'avec une variable.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 1 sept. 2008 à 12:08
qu'est-ce qui est reçu coté serveur ?
c'est transmis s'il y a 2 paramètres ou pas ?
parce que pas de mystères :
soit c'est une erreur coté javascript, et dans ce cas, rien ne part
soit c'est une erreur coté serveur ( PHP ? ), et dans ce cas, ça part.
il faut déterminer où ça queute dans un 1er temps...
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 1 sept. 2008 à 19:01
Bonjour,
en désespoir de cause, en concaténant
avant passage en paramètre...
// ici, l'id de l'ordinateur
var sel = document.getElementById('auteur');
var idauteur
= escape(sel.options[sel.selectedIndex].value);
//ici l'id de l'utilisateur
sel =
document.getElementById('auteur2');
var idauteur2 =
escape(sel.options[sel.selectedIndex].value);
//-- on
se sait jamais --//
var data = "idauteur2=" +idauteur2
+"&idauteur=" +idauteur;
xhr.send( data);
Wait and See...
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 2 sept. 2008 à 07:11
je ne comprend pas....
si en php ça fonctionne, et si en javascript ça fonctionne...
ben alors ? qu'est-ce qui ne fonctionne pas ?
il y a quelque chose qui m'échappe là !
si tu mets 2 paramètres, qu'est-ce qui est reçu coté php
si tout se passe bien coté javascript ?
CordialementBul[mon Site][M'écrire], <!--
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 2 sept. 2008 à 09:52
comment peut-tu dire alors que coté php ça baigne ?
rien n'est envoyé !
et ça ne fonctionnne pas pourquoi ?
peut-être parce que var xhr = getXhr(); ne fonctionne pas.
tu as fait un alert pour voir ?
qu'y a-t-il dans ce getXhr ?
ça devrait être un truc du genre :
function getXhr()
{ var xml;
try { xml = new XMLHttpRequest(); }
catch (e) { try { xml = new ActiveXObject('Microsoft.XMLHTTP'); }
catch (e) { try { xml = new ActiveXObject('Msxml2.XMLHTTP'); }
catch (e) { xml=false; }
}
return xml;
}
ou alors tu as une erreur de syntaxe sur la ligne
xhr.send("idauteur2="+idauteur2+"&idauteur="+idauteur); "" erreur de copié collé ?
ou idauteur ou idauteur2 ne sont pas définis
ou leur contenu est invalide ! tu as fait un alert juste avant le send ? c'est ok ?
ou alors tu as une fonction send qui détuit la vraie ?
cs_pyobour
Messages postés90Date d'inscriptionvendredi 21 octobre 2005StatutMembreDernière intervention 9 septembre 2008 2 sept. 2008 à 10:09
alors je n'ai pas d'autre fonction send
et au nivo de l'alert cela fonctionne que lorsque dans la fonction xhr.send je ne met qu'une variable vous etes sur que c'est possible de passer deux valeurs ?
de plus je ne peux faire un alert de " xhr" qu'avant la declaration de la derniere ligne( xhr.send("idauteur2= "+idauteur2+"&idauteur="+idauteur); "" ) et j'obtiens [ objet XMLrequest]
mais si je met mon alert apres le xhr.send . . . rien
apres lorsque j'utilise "xhr.send("idAuteur ="+idAuteur);" j'obtient la valeur souhaité en alerte ....
sa me rend fou toute cette histoire