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 :

Pourquoi mon array est mal déclaré


Sujet :

JavaScript

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut Pourquoi mon array est mal déclaré
    Bonjour à tous,

    Je fais une requete en ajax sur une base de donnés pour récupérer les positions des stations.

    Code javascript : 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
     
        $.ajax({
            type: "POST",
            url: "https://sub.domaine.ch/sql/mysql.php",
            crossDomain: true,
            success: result,
            error: error,
            dataType: "json"
        });
     
        function error(data)
        {
            console.log(data);
        }
     
        function result(data){
          console.log(data);
       }

    le console.log de ma fonction result

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function result(data){
            console.info("data:",data);
    }
    m'affiche très bien ce que je souhaite (je ne mets pas le contenu de properties, car cela ne concerne pas mon problème

    Citation Envoyé par javascript
    Object { properties: (14) […], map_center: (3) […] }
    ​​
    0: Array [ 46.18128881911387, 5.99973723058993 ]
    1: Array [ 46.1731270014802, 6.003323597558214 ]
    2: Array [ 46.18582311376409, 5.9977443443823475 ]
    J'ai déclaré un array ou je veux sauver l'index 0 de map_center, en dehors de la fonction result et avant ma requete ajax

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    var get_map_center =[];

    Puis dans ma fonction result j'empile les données dans, ou je copie les données venant de la base de donnée, dans ma variable get_map_center

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        function result(data){
            console.info("data:",data);
     
           for(var y=0; y < data.map_center.length; y++)
           {
           	  get_map_center[y] = data.map_center[y];
           }
    }

    Puis, plus bas je fais un console.log

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    console.info("get_map_center:",get_map_center);
    qui m'affiche bien ce que je souhaite

    Finalement, je veux remplacer ceci
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var map = L.map('map', {
                center: [46.187164,5.997526],
                zoom: 18,
                scrollWheelZoom: false
        });

    par la valeur de mon premier index
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var map = L.map('map', {
                center: [get_map_center[0][0],get_map_center[0][1]],
                zoom: 18,
                scrollWheelZoom: false
        });
    et la ca bug. Le message d'erreur est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    et_map_center[0] is undefined
    Mais comment est-ce possible, je 'ai commencà avec y=0 dans

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for(var y=0; y < data.map_center.length; y++)
           {
           	  get_map_center[y] = data.map_center[y];
           }

    Ai-je mal déclarer ma variable?

    Merci pour vos lumièes
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  2. #2
    Membre chevronné
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Points : 1 975
    Points
    1 975
    Par défaut
    Salut, dans ton histoire, il te faut sans doute déclarer get_map_center en tableau à deux dimensions...Le problème vient peut-être de là.

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Hello
    Merci
    En fait l'erreur était que le resultat d'ajax arrivait après mon code. J'ai remotelé le code pour que tout se passe dans la fonction résult
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

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

Discussions similaires

  1. [JpGraph] jpgraph me dit que mon array est vide
    Par noxia dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 14/11/2008, 09h59
  2. [Google] Pourquoi mon site est passé de Pagerank 4 a 3 ?
    Par badrel dans le forum Référencement
    Réponses: 3
    Dernier message: 04/03/2008, 18h01
  3. Pourquoi mon code est plus lent que Arrays.sort
    Par alexis779 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 12/12/2006, 12h44
  4. Réponses: 6
    Dernier message: 19/11/2006, 00h41
  5. [DataAdapter] Pourquoi mon Update est chaotique ?
    Par hm@rch@1 dans le forum Framework .NET
    Réponses: 5
    Dernier message: 17/08/2006, 10h03

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