remplir un tableau js avec les valeur d'un tableau php à 2 d

Eléphanteau du PHP | 11 Messages

10 août 2011, 13:59

Bonjour à tous,
j'ai un tableau php à 2 dimension qui contient des lignes d'une table de ma base de données.j'aimerai remplir un tableau javascript avec les valeurs de mon tableau php.j'ai tenté sa (trouvé sur le forum) mais san succès

Code : Tout sélectionner

var tab = new Array("<?php echo implode('","',$tab);?> for(abc in tab) { for(a in tab[abc]) { alert(tab[abc][a]); } }
ou sa

Code : Tout sélectionner

var tab = <?php echo json_encode($tab);?>; for(abc in tab) { for(a in tab[abc]) { alert(tab[abc][a]); } }
le for..in sert donc à vérifié que les valeurs sont là.mais je n'est que des undefined d'affiché (l'affichage du tableau php en php marche)
J'utilise jquery.
Quelqu'un à une idée?merci d'avance

ViPHP
xTG
ViPHP | 7331 Messages

10 août 2011, 14:06

Code : Tout sélectionner

var tab = new Array(<?php echo implode('","',$tab);?>);
C'est mieux quand on complète la ligne et qu'on vire les quotes qui servent à rien. ;)

Eléphanteau du PHP | 11 Messages

10 août 2011, 14:08

j'avai tenté sa avant mais sans changement.est ce que c'est ce que tu voulais dire?

Code : Tout sélectionner

var tab = new Array("<?php echo implode(',',$tab);?>);
en fait cette méthode implode ne marche pas dans mon code...je ne trouve pas pourquoi mais j'ai une erreur php que je cherche sur le net pour l'instant.sa viendrait peut être du fait que $tab est à 2 dimenssions

ViPHP
ViPHP | 4039 Messages

10 août 2011, 14:19

Mon dieu, c'est quoi cette horreur...

Ceci dit, pour passer facilement des données PHP vers JS, il est plus commode d'utiliser du JSON.

Genre:
<script>
var tab_js = <?php echo json_encode($tab_php); ?>;
</script>
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Mammouth du PHP | 19672 Messages

10 août 2011, 14:21

Essaye en transformant directement ton tableau PHP avec json_encode(), c'est fait pour.

Pour mémoire, JSON = JavaScript Object Notation, donc un tableau PHP envoyé avec json_encode() sera directement lisible en JavaScript sans autre transformation.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 275 Messages

10 août 2011, 14:49

for(a in tab['abc'])
{
alert(tab['abc'][a]);
}

Eléphanteau du PHP | 11 Messages

10 août 2011, 15:04

J'ai peut être réussie a faire quelque chose en utilisant json comme conseillé.Merci beaucoup!