Ajax fonction send sur plusieur valeur

Résolu
cs_alexius Messages postés 20 Date d'inscription mardi 6 janvier 2004 Statut Membre Dernière intervention 19 juillet 2007 - 14 mars 2007 à 17:55
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 22 août 2009 à 10:47
Bonjour à tous,
Novice avec Ajax je cherche à envoyer a un fichier de traitement plusieur valeur à la fois.
Je n'arrive a en récupérer qu'une sur les deux. quelqu'un pourrait il m'aider.
J'ai commenter ou ca ne marche pas...
Merci d'avance

voici le code

function go2()
{
    var xhr = getXhr();
    var etatsession =<?=$_SESSION['loged']?>;
    xhr.onreadystatechange = function(){        if(xhr.readyState 4 && xhr.status 200)
        {
            document.getElementById('result').innerHTML = xhr.responseText;
        }
    }
    xhr.open("POST","ajax.php",true);
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    sel2 = document.getElementById('port_contact');
    port_contact = sel2.options[sel2.selectedIndex].value;
    xhr.send("ajaxtransmition2="+port_contact);// ca marche
     xhr.send("ajaxtransmition3="+etatsession); //ca marche pas
}

4 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
15 mars 2007 à 10:34
Bonjour,
    xhr.send("ajaxtransmition2="+port_contact+'&ajaxtransmition3="+etatsession);



<hr />




Cordialement            Bul         [mon Site]     [M'écrire]           




<hr />
3
asmouma Messages postés 1 Date d'inscription mercredi 22 février 2006 Statut Membre Dernière intervention 20 mars 2007
20 mars 2007 à 12:15
Salut j'esprer que je n'arrve pas trop  tard pour repondre a ton problem

au fait t'as deux solution
-soit de concaténé les deux valeur que tu verecuperer avec un seprateur , apres tu fais un traitement pr les separar une fois reçu
-soit tu fais ça : xhr.send("variable1="+val1+"&variable2="+val2);
3
emaurille Messages postés 3 Date d'inscription mardi 17 mars 2009 Statut Membre Dernière intervention 19 mai 2010
21 août 2009 à 17:07
Bonjour,

Voila j'ai besoin de passer deux valeurs pour mettre à jour ma base de donnée.
Et je ne recupère que la première valeur dans mon fichier php, jamais la seconde.
J'ai beau regarder dans les forum je ne comprends pas tout.

Merci par avance de votre aide et comprehension.

J'utilise les méthodes suivantes:

function writediv(texte)
{
document.getElementById('zonetraitement').innerHTML = texte;
}


function updateTable(valeur,identifiant)
{
writediv('Les valeurs passes sont : ' + valeur + ' et ' + identifiant);
texte=file('requete.php?valeur='+escape(valeur)+';identifiant='+escape(identifiant));
//texte=file('requete.php?valeur='+escape(valeur));
//texte=file('requete.php?toto='+escape(identifiant));
///writediv(texte)
}

function file(fichier)
{
if(window.XMLHttpRequest) // FIREFOX
xhr_object = new XMLHttpRequest();
else if(window.ActiveXObject) // IE
xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
return(false);
xhr_object.open("GET", fichier, false);
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
}
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
22 août 2009 à 10:47
vous avez remarqué que le message date de plus de 2 ans ?

quand à votre souci, mon foie :
on ne sait ni ce que vous transmettez ( que
contient donc "fichier", là où devraient
être les paramètres puisque "get" ) ni comment
vous le traitez coté php !

remarque : votre manière de traiter le
retour d'ajax, n'est probablement pas correcte
...
xhr_object.send(null);
if(xhr_object.readyState == 4) return(xhr_object.responseText);
else return(false);
on va donc toujours retourner false
puisque vous êtes en asynchrone
et il faut donner une fonction où l'on
traite le readystate avant le send

xhr.onreadystatechange = function()
{ if(xhr.readyState == 4)
{ on peut traiter xhr.resposText
}
}
xhr.open
xhr.send
et attention, car ici, on rend la main
derrière l'appel de la function file
0
Rejoignez-nous