Passage d'un Array Php vers Javascript

Martin -  
lezao Messages postés 505 Statut Membre -
Bonjour,

Je suis entrain de développer un tableau contenant des données chargées à partir de MySQL, sous php.

Et j'aimerais utiliser javascript afin de permettre aux utilisateurs, un classement plus intuitif de ce tableau.

Quelqu'un pourait m'expliquer (ou aurait un lien sur :) comment transfèrer mon Array Php, vers un Array JavaScript ? et comment afficher un tableau graphique Javascript à partir de ce Array ?

Sachant qu'il s'agit d'un tableau à double entrée.

Merci d'avance,
Martin

3 réponses

  1. PhP Messages postés 1774 Statut Membre 606
     
    Bjr Martin

    Voici un ex :

    <html>
    <head>
    <script type="text/javascript">
    <!--
    <?php
    $tableau = array();
    
    $tableau[0][0] = 0;
    $tableau[0][1] = 1;
    $tableau[0][2] = 2;
    
    $tableau[1][0] = 'Item 1-0';
    $tableau[1][1] = 'Item 1-1';
    $tableau[1][2] = 'Item 1-2';
    
    $tableau[2][0] = 'Item 2-0';
    $tableau[2][1] = 'Item 2-1';
    $tableau[2][2] = 'Item 2-2';
    
    
    // Déclaration du tableau JavaScript
    $tableau_JS="Tableau";
    
    printf("%s = new Array();\n",$tableau_JS);
    
    foreach($tableau as $keyItems => $valueItems)
    {
    	printf("%s[%s]= new Array();\n",$tableau_JS, $keyItems);
    	foreach($valueItems as $keyItem => $valueItem)
    	{	
    		printf("%s[%s][%s] =%s;\n",$tableau_JS, $keyItems, $keyItem,
    			is_string($valueItem) ?  "\"".addslashes($valueItem)."\"" : $valueItem);
    	}
    }
    ?>
    
    // Fonction pour récuperer le contenu du tableau sous forme de texte
    function getText()
    {
    	var txt = "";
    	for (var i=0; i < Tableau.length; i++)
    	{
    		for (var j=0; j < Tableau[i].length; j++)
    		{
    			txt = txt+ 'Tableau['+i+']['+j+']='+Tableau[i][j]+'\n';	
    		}
    	}
    	return txt;
    }
    
    //-->
    </script>
    </head>
    <body onload="alert(getText())">
    </body>
    </html>


    Remarques : tu n'es pas onligé d'utiliser l'instruction foreach PHP un for classique peut convenir cepandant elle est bien pratique ...

    l'événement onload ne sert que pour le test tu peux le supprimer ainsi que le fct getText()

    J'ai supposé ici que le tableau contenait à la fois des chaînes de caractères et des nombres.

    Qu'entends-tu par un tableau graphique JavaScript ????
    13
  2. lezao Messages postés 505 Statut Membre 36
     
    Salut je cherche justement ce genre de scrypt.

    Mais comment faire pour que celui -ci n'affiche qu'une information par ligne ? car la il repete le tout a chaque fois example ça donne ça :

    0  
    0 Item 1-0,Item 1-1,Item 1-2  
    0 Item 1-0,Item 1-1,Item 1-2 Item 1-0,Item 1-1,Item 1-2  
    0 Item 1-0,Item 1-1,Item 1-2 Item 1-0,Item 1-1,Item 1-2 Item 1-0-1


    comment l'adapter pour qu'il affiche une info par ligne example :

      
    Item 1 
    Item 2 
    Item 3 
    Item 4 
    Item 5 
    etc...  
    


    Savez vous comment adapter ce scrypt, merci pour votre aide...
    1
  3. lezao Messages postés 505 Statut Membre 36
     
    j'ai trouvé :
    il faut remplacer

    txt = txt+ 'Tableau['+i+']['+j+']='+Tableau[i][j]+'\n';

    par

    txt = Tableau[i]+'\n';
    0