IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Tableau à 2 dimensions


Sujet :

JavaScript

  1. #1
    Invité
    Invité(e)
    Par défaut Tableau à 2 dimensions
    Bonjour!

    J'essais d'utiliser des tableaux à 2 dimensions en JavaScript mais ça ne fonctionne pas du tout...

    Je génère mon tableau à partir de PHP comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    $stmt = oci_parse($connect, "SELECT * FROM liste_cubages_net");
    oci_execute($stmt, OCI_DEFAULT);
    echo "	<script type='text/javascript'>
    			var tab_markers = new Array();
    		</script>";
    $i = 0;
     
    while (oci_fetch_array($stmt))
    {
    	$coord = initCoord(oci_result($stmt, 8));
    	if($coord != null)
    	{
    		echo "	<script type='text/javascript'>
    					tab_markers[".$i.", 'coord'] = '".$coord."';
    				</script>";
    		$i++;
    	}
    }
    Ce qui fait que dans mon code j'ai une jolie liste style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    <script type='text/javascript'>
    	var tab_markers = new Array();
    </script>
    <script type='text/javascript'>
    	tab_markers[0, 'coord'] = '46.51...985661,6.75...2271';
    </script>
    <script type='text/javascript'>
    	tab_markers[1, 'coord'] = '46.3947...5602,7.126...1026';
    </script>
    <script type='text/javascript'>
    	tab_markers[2, 'coord'] = '46.518...9985661,6.75...2271';
    </script>
    <script type='text/javascript'>
    	tab_markers[3, 'coord'] = '46.555...4548,6.797...193';
    </script>
    Le problème, c'est que je n'arrive pas à utiliser ces valeurs! Si je liste tout mon tableau comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for(var j = 0; j<maxNum;j++)
    {
    	document.write(tab_markers[j, 'coord']+"<br/>");
    }
    J'ai le même valeur partout, la dernière ajoutée.

    Quelqu'un pourrait-il m'expliquer ?

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    Une matrice à 2 dimensions est traitée comme un tableau de tableaux.
    Donc mets plutôt en place ce type de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
      <script type="text/javascript">
      var tab_markers = new Array();
      tab_markers[0] = new Array();
      tab_markers[0]['coord'] = '46.51...985661,6.75...2271';
      tab_markers[1] = new Array();
      tab_markers[1]['coord'] = '46.3947...5602,7.126...1026';
      tab_markers[2] = new Array();
      tab_markers[2]['coord'] = '46.518...9985661,6.75...2271';
      tab_markers[3] = new Array();
      tab_markers[3]['coord'] = '46.555...4548,6.797...193';
      for(var j = 0; j<tab_markers.length;j++) {
         document.write(tab_markers[j]['coord']+"<br/>");
      }
    </script>
    ERE

  3. #3
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Points : 4 835
    Points
    4 835
    Par défaut
    on commence :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    echo "	<script type='text/javascript'>
    			var tab_markers = new Array();"
     
    $i = 0;
     
    while (oci_fetch_array($stmt))
    {
    	$coord = initCoord(oci_result($stmt, 8));
    	if($coord != null)
    	{
    		echo 'tab_markers['.$i.']["coord"] = "'.$coord.'"';
    		$i++;
    	}
    }
    echo "</script>";
    tu dois avoir une structure comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    tab_markers[0]["coord"] ="valeur1";
    tab_markers[1]["coord"] ="valeur2";
    génère correctement ceci avant d'aller plus loin

  4. #4
    Invité
    Invité(e)
    Par défaut
    @emmanuel.remy : Merci beaucoup ! Ca à l'air de bien fonctionner.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Collections] lecture tableau 2 dimensions
    Par heloise dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 30/09/2004, 11h49
  2. [tableau à 2 dimensions] association String et float
    Par LoLoSS dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/07/2004, 11h53
  3. Tableau à n dimensions
    Par youb dans le forum MFC
    Réponses: 10
    Dernier message: 13/05/2004, 15h13
  4. Passage d'un tableau à deux dimensions
    Par karl3i dans le forum C
    Réponses: 3
    Dernier message: 20/10/2003, 15h50
  5. Réponses: 23
    Dernier message: 21/08/2003, 08h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo