Remplir un tableau JS à partir d'une requete php

anthony428 Messages postés 102 Date d'inscription vendredi 18 août 2006 Statut Membre Dernière intervention 29 mai 2012 - 7 nov. 2011 à 11:35
cs_jperre Messages postés 268 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 19 janvier 2017 - 14 nov. 2011 à 13:13
Bonjour à tous,

Voici mon problème, je récupère le contenu de certains champs grace à une requete PHP/MySQL.

Je voudrais ensuite faire un tableau Javascript qui se remplit automatiquement grace au résultat de cette requete.
Voici ce que j'ai pour le moment :

var pausecontent=new Array() //n'affichera que les 3 premiers résultats de la requete SQL.
pausecontent[0]= '<?=', '.$title[1].$texte[1].'
' ?>'
pausecontent[1]= '<?=', '.$title[2].$texte[2].'
' ?>'
pausecontent[2]= '<?=', '.$title[3].$texte[3].'
' ?>'


Donc mon probleme, c'est que je voudrais passer en une seule ligne :
pausecontent[$res2["Count"]] => c'est le nombre d'enregistrement de ma requete
Mais ce n'est pas aussi facile pour moi qu'en php, n'y a t'il pas moyen de faire un Foreach ou un for quelque part ? Je bloque en Javascrip.

Si quelqu'un peut m'aider à trouver une solution ça serait super cool.
Merci d'avance

2 réponses

cs_jperre Messages postés 268 Date d'inscription lundi 9 janvier 2006 Statut Membre Dernière intervention 19 janvier 2017 2
14 nov. 2011 à 11:48
Pour créer un tableau HTML avec le résultat de la requête SQL, il faut :
Créer un objet Array() :
var pausecontent=new Array();
Déterminer le nombre d'enregistrements de la requête :
var nbEnr=<?php=$res2[count] ?>
Affecter les valeurs extraites de la requête SQL à l'objet Array() à l'aide d'une boucle for :
for (n=0;n<nbEnr;n++) {
pausecontent[n]=<?php="news_photos/".$img[n].",".$title[n].",".$text[n]?>;
}
Ensuite, il faut créer un objet DOM table et y insérer des objets rows et cells :
var tabAff=document.createElement("table");
for (n=0;n<nbEnr;n++) {
var rowContent=pausecontent[n].split(",");//utilisation de la fonction split()
var tabRow=tabAff.insertRow(n);
for (m=0;m<3;m++) {
var tabCell=tabRow.insertCell(m);
if (m==0) {
var cellImg=document.createElement("img);
cellImg.src=rowContent[m];
tabCell.appendChild(cellImg);
}
else {
tbaCell.innerHTML=rowContent[m];
}
}
}
Dans ce cas tous les enregistrements de la requête SQL seront affichés dans un tableau HTML.
Bon courage!...
1

Discussions similaires

en js, comment récupérer la valeur de la ligne courante de
adoptioninternationale -
adoptioninternationale -

25 réponses
Rejoignez-nous