Récupéré un tableau php avec Javascript

Résolu
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 - 23 juil. 2005 à 00:09
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 - 24 juil. 2005 à 10:24
Bonjours a tous.

Voila mon problème.
Je créer un tableau php grace au résultat que j'ai obtenu de ma base de donée et j'aimerai trasférer ces résultats vers javascript.
Voici donc le code je j'ai fais :
coté php
$sql = "SELECT * FROM flash_nouvelle";
$req = mysql_query($sql);
$i = 0;
while ($data = mysql_fetch_array($req)) {
$tableau[$i][0] = $data['id'];
$tableau[$i][1] = $data['pseudo'];
$i++;
}
coté javascript
h = '<?php echo $i; ?>';
for (a=0;a<h;a++) {
info[a][0] = '<?php echo $tableau['+a+'][0]; ?>';
info[a][1] = '<?php echo $tableau['+a+'][1]; ?>';
}
Apparement cela ne marche pas.
J'ai vérifier la valeur de h elle est bonne (78) donc je pense que le problème vient de '<?php echo $tableau['+a+'][0]; ?>'; car lorsque je vérifi une valeur du tableau info cela ne renvoi rien.

Quel serai donc la solution a mon problème ?
Si c'est impossible comment pourai-je faire ?

Merci d'avance

Cordinalement



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne

12 réponses

Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 10:43
Voila j'ai finalement réussit a faire se que je voulais.
Voici la solution :
<?php
$sql = "SELECT * FROM flash_nouvelle";
$req = mysql_query($sql);
$i = 0;
?>
<script type="text/javascript">
var tableau = new Array(
<?php
while ($data = mysql_fetch_array($req)) {
$tableau[$i][0] = $data['id'];
$tableau[$i][1] = $data['pseudo'];
echo "new Array('".$data["id"]."','".$data["pseudo"]."'),";
$i++;
}
?>
new Array('',''));
alert(tableau[0][0]);
</script>

Je te remercie pour ton aide



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne

http://blacknight91.free.fr/Flash_nouvelle/
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
24 juil. 2005 à 07:37
dans un div ( un span... ) on met ce que l'on veut :
des images, des , des <textarea>...
accessibles comme tout champ de la page et
invisibles tant que l'on ne modifie pas le
getElementById("id du div").style.display="inline"
ou "none".
on peut aussi "construire" cet objet de manière
dynamique ( avec .innerHTML par exemple ).
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2005 à 09:11
Bonjour,
$tableau c'est en php, donc pas
accessible en javascript,
il faut faire générer un tableau en javascript.
ch'tit exemple
( non testé pas même la syntaxe,
et avec pseudo seulement
et on met un poste de trop
donc à finir, améliorer ... )

...<?php
$sql = "SELECT * FROM flash_nouvelle";
$req = mysql_query($sql);
$i = 0;
?>
<script type="text/javascript">
var tableau=new Array(
<?php
while ($data = mysql_fetch_array($req)) {
$tableau[$i][0] = $data['id'];
$tableau[$i][1] = $data['pseudo'];


echo "'".$data["pseudo"]."',";


$i++; }
?>
'');
alert(tableau[tableau.length-2];
</script>
<?php...

pour l'essai on affiche le dernier poste
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 10:11
J'ai essayer de plusieur façon mais cela ne marche toujours pas :
<?php
$sql = "SELECT * FROM flash_nouvelle";
$req = mysql_query($sql);
$i = 0;
?>

<script type="text/javascript">
var tableau = new Array(
<?php
while ($data = mysql_fetch_array($req)) {
$tableau[$i][0] = $data['id'];
$tableau[$i][1] = $data['pseudo'];
echo "new Array(".$data['id'].",".$data["pseudo"]."),";
$i++;
}
?>

'');
alert(tableau[0][1];
</script>

Pourrai tu m'éclairer sur ce pourquoi cela ne va pas ?
Au fait que fait "alert()" ? (Je ne suis pas dans le javascript d'habitude, pluto dans le php et flash)

Merci d'avance



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2005 à 10:27
echo "new Array(".$data['id'].",".$data["pseudo"]."),";

ça ne va pas, ça va générer une foultitude de new Array
alors qu'il ne doit y en avoir qu'1. ne respecte pas mon
exemple. essayer dans un 1er temps tel quel ...
( ce que je n'ai pas fait : je n'ai pas les données de la base )
puis modifier pour 2èmes données.

en Javascript alert(....) c'est un message à l'écran.

Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 10:32
Même en faisant un copier/coller de ton code cela n'a pas l'air de marcher.
J'ai essayer après de modifier quelque truc pour trouver se qui ne vas pas mais même chose.

Pourquoi met tu a la fin '' ? Juste avant de ferme le tableau.



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 10:35
Rectification...
Le problème était du a alert()
Tu avais oublié de fermer la parenthèse.



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 10:37
Il faudrai maintenant que j'arrive a faire un tableau a deux dimensions.
Je ne le maitrise pas encore en javascript.



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 13:27
Excuse moi de te redéranger mais un nouveaux problème ce pose.
Grace au réponse trouver je souhaite afficher un calque sur la page a un endroti précis et avec des information précise.
Jusqu'a la pas de problème pour créer le calque en javascript.
Mais c'est pour l'appliquer.
J'utilise
document.write(variable_contenant_le_calque);

Mais ceci écrase tout se qui se trouve sur la page.
Je ne comprend pas pourquoi sa fait sa.
As tu une solution?



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
23 juil. 2005 à 15:33
c'est dans la définition de document.write :
si la page a été totalement affichée, cela
efface toute la page, y compris les javascript...
qu'entendre par calque ? un div ? un span ? autre ?
un iframe .... plusieurs réponses =>
_ un "calque" caché que l'on montre quand il faut
( style.display="inline" ou "none" )
_ un "calque" dans lequel on ajoute
( calque.innerHTML+=...., même possible dans body
comme "calque". )
_ c'est ce qui me vient à l'esprit imméditement,
mais il y a d'autres possibilités ( c'est sûr )
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
23 juil. 2005 à 19:16
Pour le calque c'est un div
Tes réponse m'intérèsse.
Si je cache le calque et que je l'affiche après est ce que je peux après modifier son contenu pour le remplacer complètement ?
Si oui comment.

Merci d'avance.



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
Blacknight91titi Messages postés 1732 Date d'inscription jeudi 17 juin 2004 Statut Membre Dernière intervention 9 mars 2015 2
24 juil. 2005 à 10:24
Je te remercie beaucoup pour tes réponse très fructueuse.
J'ai réussit a faire se que je voulais.
Voici le résultat si tu veux voir :
http://blacknight91.free.fr/Flash_nouvelle/test.php
Ce n'est évidement qu'un prototype.

Encore merci



Blacknight91Titi
La tristesse envahit ce monde peu a peu, rongeant maison par maisons ces occupants Elle inspire la tristesse sans que personne
0
Rejoignez-nous