Récuperer plusieurs variables AJAX
Résolu/Fermé
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
-
Modifié par lezao le 1/07/2010 à 15:56
bloupies - 2 oct. 2013 à 18:25
bloupies - 2 oct. 2013 à 18:25
A voir également:
- Récuperer plusieurs variables AJAX
- Recuperer message whatsapp supprimé - Guide
- Recuperer video youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Impossible de récupérer mon compte gmail - Guide
- Récupérer mon compte facebook désactivé - Guide
7 réponses
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
1 juil. 2010 à 16:56
1 juil. 2010 à 16:56
Si les données que tu souhaites récupérer sont sur deux fichiers différents, il faudra faire deux requête AJAX.
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
1 juil. 2010 à 18:04
1 juil. 2010 à 18:04
Bon ça a l'air de marcher, en fait j'etait en php4 il fallait etre en php 5.
je continue et je reviens mettre un RESOLU quand j'ai fini.
En tout cas genial, merci a toi et a ton savoir avion-f16
je continue et je reviens mettre un RESOLU quand j'ai fini.
En tout cas genial, merci a toi et a ton savoir avion-f16
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
1 juil. 2010 à 16:14
1 juil. 2010 à 16:14
La parser, oui c'est ce que je voudrais faire mais je ne sais pas comment.
Je m'explique :
Je souhaite afficher les commentaires postés par les utilisateurs.
Mon fichier ajax.js (exemple)
demande a mon fichier ajax.php de recuperer tous les commentaires d'un post.
j'ai donc plusieurs résultat.
Commentaire 1
commentaire 2 etc...
Je souhaite donc recuperer tous les commentaires en une requette et pouvoir les afficher separement.
Je pourrais executer ma requette ajax, 100 fois pour recuperer chaque commentaires, mais ce serait lourd.
Donc je voudrais en une seule requette, demander a mon fichier php de me donner tous les commentaires et de me les transmettre via la requette ajax comme ci dessus.
J'ai essayé de creer un tableau PHP pour y insrer mes valeurs dans une seule variable, mais je me suis dit que la fonction ajax n'allait recupéré qu'une seul information.
Alors voila ce que je veux faire, idealement mettre mes infos dans un tableau php, puis le parser a avec javascript serait tres bien.
Mais etant donné que mon fichier php repond en faisant un echo $var, je doute qu'il transmette un tableau mais uniquement une seul info.
Donc je demande votre aide, meme si je dois utiliser un autre systeme de requette AJAX.
MErci beaucoup...
Je m'explique :
Je souhaite afficher les commentaires postés par les utilisateurs.
Mon fichier ajax.js (exemple)
demande a mon fichier ajax.php de recuperer tous les commentaires d'un post.
j'ai donc plusieurs résultat.
Commentaire 1
commentaire 2 etc...
Je souhaite donc recuperer tous les commentaires en une requette et pouvoir les afficher separement.
Je pourrais executer ma requette ajax, 100 fois pour recuperer chaque commentaires, mais ce serait lourd.
Donc je voudrais en une seule requette, demander a mon fichier php de me donner tous les commentaires et de me les transmettre via la requette ajax comme ci dessus.
J'ai essayé de creer un tableau PHP pour y insrer mes valeurs dans une seule variable, mais je me suis dit que la fonction ajax n'allait recupéré qu'une seul information.
Alors voila ce que je veux faire, idealement mettre mes infos dans un tableau php, puis le parser a avec javascript serait tres bien.
Mais etant donné que mon fichier php repond en faisant un echo $var, je doute qu'il transmette un tableau mais uniquement une seul info.
Donc je demande votre aide, meme si je dois utiliser un autre systeme de requette AJAX.
MErci beaucoup...
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
1 juil. 2010 à 20:02
1 juil. 2010 à 20:02
J'ai reussi, j'ai due formater la chaine moi mem voici le code:
COté php :
COté javascript :
COté php :
$guillement = '"' ; $i = 0 ; $sql40 = "SELECT * FROM commentaires WHERE idphoto='".$reference."'"; $req40 = mysql_query($sql40) or die('Erreur SQL !<br />'.$sql40.'<br />'.mysql_error()); while ($data40 = mysql_fetch_array($req40)) { $i++ ; $comment = $data40["commentaire"]; if($i != 1){$virgule = ', ' ;}else{$virgule = '' ;} $var = $virgule.$guillement."Variable".$i.$guillement ; $var2 = " : " ; $var3= $guillement."testok".$i.$guillement ; ${"tableau".$i} = $var.$var2.$var3 ; $tableau = $tableau.${"tableau".$i} ; } $chaine = "{".$tableau."}" ; echo $chaine ;
COté javascript :
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); } function recuperer() { info2 = document.getElementById("refjava").value ; chaine = file('ajax.php?requette3=1&reference='+info2+''); var json = jsonParse(chaine); alert(json.Variable1); alert(json.Variable2); alert(json.Variable3); }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
azukaar
Messages postés
442
Date d'inscription
jeudi 1 juillet 2010
Statut
Membre
Dernière intervention
5 février 2013
24
1 juil. 2010 à 16:01
1 juil. 2010 à 16:01
Bonjour,
pourrais tu préciser de ce que tu fais de tes variables? parce que logiquement si tu fais
var truc = recuperer(gnan gnan);
tu récupèrera une variable truc avec toutes tes valeurs dedans et donc tu sera obligé de la parser
pourrais tu préciser de ce que tu fais de tes variables? parce que logiquement si tu fais
var truc = recuperer(gnan gnan);
tu récupèrera une variable truc avec toutes tes valeurs dedans et donc tu sera obligé de la parser
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
1 juil. 2010 à 16:16
1 juil. 2010 à 16:16
Salut.
Si les différentes variables que tu souhaites récupérer sont sur le même fichier, tu peux utiliser le format JSON.
En PHP, tu peux convertir un array (tableau) en JSON avec la fonction json_encode.
Dans le JS, il faudra transformer la variable mavariable qui est une chaine en un objet JSON. Tu peux utiliser la librairie JS "json-sans-eval.js" qui permet d'éviter la fonction eval(). Exemple :
Si les différentes variables que tu souhaites récupérer sont sur le même fichier, tu peux utiliser le format JSON.
En PHP, tu peux convertir un array (tableau) en JSON avec la fonction json_encode.
echo json_encode(array( 'Variable1' => 'Valeur', 'Variable2' => 'Valeur' ));
Dans le JS, il faudra transformer la variable mavariable qui est une chaine en un objet JSON. Tu peux utiliser la librairie JS "json-sans-eval.js" qui permet d'éviter la fonction eval(). Exemple :
<script type="text/javascript" src="http://json-sans-eval.googlecode.com/files/json-minified.js"></script> <script type="text/javascript"> var chaine = '{"Variable1":"Valeur 1", "Variable2":"Valeur 2"}'; window.onload = function() { var json = jsonParse(chaine); alert(json.Variable1); }; </script>
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
Modifié par lezao le 1/07/2010 à 16:30
Modifié par lezao le 1/07/2010 à 16:30
Désolé j'ai un peu du mal avec javascript.
J'ai essayé ce code, mais il me repond : Valeur 1
Normal Variable1 = valeur 1
Comment faire pour qu'il me reponde :
Variable1 = valeur
?
il ne me donne pas ce qui est dans le tableau json_encode()
J'ai essayé ce code, mais il me repond : Valeur 1
Normal Variable1 = valeur 1
Comment faire pour qu'il me reponde :
Variable1 = valeur
?
il ne me donne pas ce qui est dans le tableau json_encode()
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
1 juil. 2010 à 16:30
1 juil. 2010 à 16:30
alert('Variable1 = '+json.Variable1);
azukaar
Messages postés
442
Date d'inscription
jeudi 1 juillet 2010
Statut
Membre
Dernière intervention
5 février 2013
24
1 juil. 2010 à 16:31
1 juil. 2010 à 16:31
donc si j'ai bien compris tu veux que ton fichier php te renvois tous les commentaires les uns apres les autres ??
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
1 juil. 2010 à 16:42
1 juil. 2010 à 16:42
Oui c'est ça.
L'idée de avion-f16 est tres bonne.
Mais ça marche pas car mon code n'est pas sur la meme page, mon code php est sur la page php et mon code javascript est sur la page javascript.
Du coup il ne recupere pas mes variables comme prevu par le script du dessus JSON.
Mais c'est l'idée, a moins que j'ai pas sasi un truc...
L'idée de avion-f16 est tres bonne.
Mais ça marche pas car mon code n'est pas sur la meme page, mon code php est sur la page php et mon code javascript est sur la page javascript.
Du coup il ne recupere pas mes variables comme prevu par le script du dessus JSON.
Mais c'est l'idée, a moins que j'ai pas sasi un truc...
azukaar
Messages postés
442
Date d'inscription
jeudi 1 juillet 2010
Statut
Membre
Dernière intervention
5 février 2013
24
1 juil. 2010 à 16:46
1 juil. 2010 à 16:46
mais je comprend pas... si ce n'est que ça pourquoi tu n'appelle pas ta fonction javascript normalement et dans ton php tu renvoie une variable contenant tous les post ??
lezao
Messages postés
469
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
14 août 2016
36
1 juil. 2010 à 16:48
1 juil. 2010 à 16:48
Dans un tableau tu veux dire ?
azukaar
Messages postés
442
Date d'inscription
jeudi 1 juillet 2010
Statut
Membre
Dernière intervention
5 février 2013
24
1 juil. 2010 à 16:58
1 juil. 2010 à 16:58
ben non justement,
si tu as l'intention de parser comme tu l'a dis, tu n'as pas besoin de tableau
si tu as l'intention de parser comme tu l'a dis, tu n'as pas besoin de tableau
1 juil. 2010 à 17:38
Je te suis tres reconnaissant de me donner un coup de main.
1 juil. 2010 à 17:42
1 juil. 2010 à 17:54
FIchier php :
fichier javascript :
Il me repond undefined.....
1 juil. 2010 à 18:20
La solution que je t'ai proposé n'est valable que si les variables sont sur le même script.