Insertion javascript dans PHP et inversement
Fermé
law
-
23 oct. 2006 à 14:34
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 24 oct. 2006 à 10:56
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 24 oct. 2006 à 10:56
A voir également:
- Insertion javascript dans PHP et inversement
- Insertion liste déroulante excel - Guide
- Telecharger javascript - Télécharger - Langages
- Insertion signature word - Guide
- Easy php - Télécharger - Divers Web & Internet
- Insertion sommaire word - Guide
3 réponses
kij_82
Messages postés
4089
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
23 oct. 2006 à 17:07
23 oct. 2006 à 17:07
J'ai une solution pour toi, qui consiste à faire de l'AJAX en utilisant les objets XMLHttpRequest de javascript.
Explications :
Tu créé une fonction javascript qui va initialiser un objet XMLHttpRequest. Cet objet là, va appelé ton script PHP, dans lequel tu effectue ta requete SQL sur ta base de donnée, puis dans lequel tu écrit ta String de réponse (tu comprendra mieux en ayant lu le lien que je vais te donner à la fin).
Lorsque ton script PHP est terminé, dans ta fonction javascript appellante, l'objet XMLHttpRequest va récupérer tout ce qui a été afficher dans ton script PHP pour éventuellement l'interpréter si tu le demande. C'est là que c'est intéressant pour toi, car tu vas pouvoir écrire du code javascript sous forme de chaine dans ton script PHP (initialiser donc ta variable javascript de ton tableau d'image avec ta requète) et ce code sera interpréter au retour (fin de script php)
Ta chaine ressemblera donc à un truc du genre :
Voila en gros la construction de ta réponse de retour de ton script pour que ca te créé une variable tableau contenant tes images. Ca fait longtemps que j'ai pas touché au JS donc la déclaration du tableau c'est peut etre pas ca, mais l'idée est là.
Maintenant pour comprendre les objets XMLHttpRequest et leur puissance (c'est vraiment tres utile !), regarde ici :
https://openweb.eu.org/articles/objet_xmlhttprequest/
Bon courage :), et si tu as besoin d'un exemple concret, bip moi : kij_82@hotmail.fr
Explications :
Tu créé une fonction javascript qui va initialiser un objet XMLHttpRequest. Cet objet là, va appelé ton script PHP, dans lequel tu effectue ta requete SQL sur ta base de donnée, puis dans lequel tu écrit ta String de réponse (tu comprendra mieux en ayant lu le lien que je vais te donner à la fin).
Lorsque ton script PHP est terminé, dans ta fonction javascript appellante, l'objet XMLHttpRequest va récupérer tout ce qui a été afficher dans ton script PHP pour éventuellement l'interpréter si tu le demande. C'est là que c'est intéressant pour toi, car tu vas pouvoir écrire du code javascript sous forme de chaine dans ton script PHP (initialiser donc ta variable javascript de ton tableau d'image avec ta requète) et ce code sera interpréter au retour (fin de script php)
Ta chaine ressemblera donc à un truc du genre :
$taille = @myslq_num_row($result); $ma_chaine = "var tab = new Array[]; tab.length = ".$taille."; "; $i = 0; while ( $line = @mysql_fetch_array($result) ){ $ma_chaine .= "tab[".$i."] = ".$line["image"]."; "; } echo $ma_chaine
Voila en gros la construction de ta réponse de retour de ton script pour que ca te créé une variable tableau contenant tes images. Ca fait longtemps que j'ai pas touché au JS donc la déclaration du tableau c'est peut etre pas ca, mais l'idée est là.
Maintenant pour comprendre les objets XMLHttpRequest et leur puissance (c'est vraiment tres utile !), regarde ici :
https://openweb.eu.org/articles/objet_xmlhttprequest/
Bon courage :), et si tu as besoin d'un exemple concret, bip moi : kij_82@hotmail.fr
merci pour ton aide,
j'ai trouvé une autre solution, j'ai transformé mon tableau php en chaine, j'ai passé cette chaine dans une variable javascript et j'ai retransformé en tableau :)
par contre est ce que tu saurais comment résoudre cela :
voila j'aimerais sous php lui faire comprendre que : $fiche->question.$i en l'utilisant dans une boucle soit $fiche->question1, $fiche->question2 etc
mais il ne l'interprete pas comme ça, je sais pas si c possible de concaténer,
j'ai essaye en transformant en une chaine ne faisant $question="$"."fiche->question".$i; il m'affichait bien $fiche->question1 mais comme c un string il ne peut plus l'interpreter comme une variable, est ce kil faut peut etre changer ensuite le type de la variable,
merci d'avance si tu vois comment je peux faire
j'ai trouvé une autre solution, j'ai transformé mon tableau php en chaine, j'ai passé cette chaine dans une variable javascript et j'ai retransformé en tableau :)
par contre est ce que tu saurais comment résoudre cela :
voila j'aimerais sous php lui faire comprendre que : $fiche->question.$i en l'utilisant dans une boucle soit $fiche->question1, $fiche->question2 etc
mais il ne l'interprete pas comme ça, je sais pas si c possible de concaténer,
j'ai essaye en transformant en une chaine ne faisant $question="$"."fiche->question".$i; il m'affichait bien $fiche->question1 mais comme c un string il ne peut plus l'interpreter comme une variable, est ce kil faut peut etre changer ensuite le type de la variable,
merci d'avance si tu vois comment je peux faire
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
24 oct. 2006 à 10:56
24 oct. 2006 à 10:56
Bonjour,
Essaie quelque chose de ce genre :
Xavier
Essaie quelque chose de ce genre :
for (int $i=0;$i<10;$i++) { echo $fiche->{"question".$i}; }Il me semble que ça devrait donner le résultat souhaité.
Xavier