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 :

Transmettre un tableau php à un script JS


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 590
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 590
    Points : 813
    Points
    813
    Par défaut Transmettre un tableau php à un script JS
    Bonjour,

    La FAQ PHP : Comment afficher du texte ? indique comment transmettre une variable php à un script JS.
    L'exemple donné concerne une variable texte, mais comment transmettre un tableau?
    J'ai fait l'essai suivant qui me retourne une magnifique erreur Array to string conversion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
    //var_dump($joursCal);
    print '&lt;script type="text/javascript" language="javascript">';
    //print "alert('$champ[texte]');";
    print "var joursCal[] = '$joursCal', moisCal = '$moisCal';";
    print "alert(joursCal, moisCal);";
    print '&lt;/script>' ;
    ?>

  2. #2
    Expert éminent
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Urbaniste
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Points : 9 127
    Points
    9 127
    Par défaut
    une recherche dans contrib
    et hop
    http://www.developpez.net/forums/d10...cript-methode/

  3. #3
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    Considère php comme une machine à écrire du code js ...
    php ne génère que du string ...

    en js tu écrirais:

    en php il suffit de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $var1=1;
    $var2=2;
    $var3=3;
     
    echo "var tab=[".$var1.",".$var2.",".$var3."]";
    ou si tu as un array coté php utiliser la méthode donnée par seka avec json_encode qui retournera un string du code de l'array

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 590
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 590
    Points : 813
    Points
    813
    Par défaut
    Merci beaucoup mais j'ai encore une petite question de vrai débutant. Dans l'exemple donné, pourquoi ne met-on pas le mot var devant scriptData en début de ligne? Les objets sont bien des variables?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
      scriptData = <?php echo json_encode($scriptData ); ?>;
    </script>

  5. #5
    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 640
    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 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 590
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 590
    Points : 813
    Points
    813
    Par défaut
    Merci, ce lien est vraiment intéressant.

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

Discussions similaires

  1. Transmettre un tableau PHP par formulaire
    Par Amaury_35 dans le forum Langage
    Réponses: 5
    Dernier message: 11/08/2009, 09h14
  2. Transmettre un tableau javascript à Php
    Par code man dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 24/02/2009, 20h56
  3. Réponses: 4
    Dernier message: 05/11/2008, 17h32
  4. transmettre tableau php get
    Par calitom dans le forum Langage
    Réponses: 2
    Dernier message: 22/08/2008, 13h47
  5. Réponses: 3
    Dernier message: 10/11/2006, 10h33

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