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 :

Extraire les données d'une string


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 85
    Points : 41
    Points
    41
    Par défaut Extraire les données d'une string
    Bonjour,

    Avec Php et la fonction json_encode(); j'arrive en envoyer un tableau php vers du javascript, mais le problème c'est qu'il est sous forme de chaine de caractère

    du coup je me retrouves avec une string comme cela:
    ["12","22","34","14","75","6"]

    et je n'arrive pas a extraire les numéro qui sont entre guillemet.
    la chaine de mon tableau php est stocké dans data et j'aurai voulut faire un truc comme cela mais vu que c'est une chaine je peux pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var tab = data ;
     
    for(var i= 0; i < tab.length; i++){
       fonction_a();
    }
    Comment puis-je parcourir ma chaine et lui extraire les données entre guillemet pour les insérer dans le tableau tab s'il vous plait? Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 634
    Points : 66 650
    Points
    66 650
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    chaine='["12","22","34","14","75","6"]'
    tab=eval('('+chaine+')')
    alert (tab)
    //ou
    tab= chaine.split(/\["|","|"\]/)
    alert (tab)
    je conseillerais plutot le seconde methode ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 85
    Points : 41
    Points
    41
    Par défaut
    Salut Merci de tes réponses je vais essayer mais avant peux tu me dire ce que fait ton split ?

    tab= chaine.split(/\["|","|"\]/)

    j'ai du mal à le comprendre, j'en ai fait que des simples avec un ';' et celui la me perturbe...

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 634
    Points : 66 650
    Points
    66 650
    Billets dans le blog
    1
    Par défaut
    je splitte avec une expression régulière :

    autrement dit un "pattern"

    explication

    dans ta chaine les chiffres sont séparés soit par [" ou "," ou "]

    donc je split sur l'un des trois séparateurs
    \[" ou "," ou "\]

    le \ sert à echapper les crochet pour l'expression regulière


    ce qui m'etonne est que json_encode retourne en fait un array et pas un objet json, tu devrais avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine='{"12","22","34","14","75","6"}'
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 85
    Points : 41
    Points
    41
    Par défaut
    Super Merci beaucoup je comprend mieu.



    Citation Envoyé par SpaceFrog Voir le message
    ce qui m'etonne est que json_encode retourne en fait un array et pas un objet json, tu devrais avoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine='{"12","22","34","14","75","6"}'
    Je ne sais pas, j'utilise wamp5 1.7.3 peut être que la fonction est personnalisé?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 634
    Points : 66 650
    Points
    66 650
    Billets dans le blog
    1
    Par défaut
    a priori c'est natif php donc pas grand chose à voir avec ta version wamp ou autre chose

    http://php.net/manual/fr/function.json-encode.php
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 85
    Points : 41
    Points
    41
    Par défaut
    Et bien d'après le manuel php il faut forcer avec une option pour passer le résultat en objet. Bref ca marche c'est le principal :p

    merci encore !

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

Discussions similaires

  1. [3.0.2]Extraire les données d'une requête vers un flux sortant
    Par lazarel dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 26/11/2008, 10h16
  2. Réponses: 2
    Dernier message: 24/10/2008, 09h04
  3. Réponses: 9
    Dernier message: 28/05/2008, 16h29
  4. Réponses: 1
    Dernier message: 26/01/2007, 09h15
  5. [C#] Comment extraire les parties d'une string ?
    Par mrpowerboy dans le forum C#
    Réponses: 3
    Dernier message: 21/02/2006, 10h10

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