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

Langage PHP Discussion :

[PHP-JS] Probl�me php-javascript (suite)


Sujet :

Langage PHP

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair� Avatar de nicoaix
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    D�cembre 2004
    Messages
    571
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 50
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 571
    Par d�faut [PHP-JS] Probl�me php-javascript (suite)
    Bonjour,

    J'ai post� hier un sujet concernant l'imbrication de code php dans un script javascript.
    Ca fonctionne, mis � part le fait que je ne peux transmettre que des donn�es num�rique entre php et javascript. Je m'explique.

    Voici le 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 language="javascript"> 
    var menu1 = new Array; //nouveau tableau 
    <?PHP
    $num1=3;
    For($i=0;$i<$num1;$i++){
    $titre="menu1";
    ?>
    menu1[<?=$i?>] = new Array("p"+<?=$i?>, <?=$titre?>+<?=$i?>);
    <?PHP
    }
    ?>
    ...
    Ce code devrait avoir le meme r�sultat que le code d'origine enti�rement en javascript suivant:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    ...
    script language="javascript"> 
    var menu1 = new Array; //nouveau tableau 
    menu1[0] = new Array("p0", "menu10"); 
    menu1[1] = new Array("p1", "menu11"); 
    menu1[2] = new Array("p2", "menu12"); 
    ...
    Ce dernier code est affich� ensuite dans un menu d�roulant ce qui donne:

    menu10
    menu11
    menu12

    Or mon code avec du php m'affiche dans le menu d�roulant:

    0
    p0,01
    p0,0,p1,p0,012

    Je ne vois pas ce qui ne fonctionne pas.

    Quelqu'un a-t-il une id�e?

    Merci

    Petite pr�cision:

    Dans mon code si je remplace cette ligne:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    menu1[<?=$i?>] = new Array("p"+<?=$i?>, <?=$titre?>+<?=$i?>);
    par celle l�:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    menu1[<?=$i?>] = new Array("p"+<?=$i?>, "menu1"+<?=$i?>);
    Ca fonctionne comme le code javascript d'origine, c'est � dire en affichant:

    menu10
    menu11
    menu12

  2. #2
    Expert confirm� Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script language="javascript">
    var menu1 = new Array; //nouveau tableau
    <?php
    $num1=3;
    For($i=0;$i<$num1;$i++){
       $titre="menu1";
       echo 'menu1['.$i.'] = new Array("p'.$i.'", "'.$titre.$i.'");'."\n";
    }
    ?>
    ...

  3. #3
    Expert confirm�
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    D�tails du profil
    Informations personnelles :
    �ge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par d�faut
    berk, evites les <? ?>html<? ?> c est illisible et pas maintenable :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?
    echo "<script type='text/javascript'>";
    echo "var menu1 = new Array();";
    $num1=3;
    for($i=0;$i<$num1;$i++){
        $titre="menu1";
        echo "menu1[".$i."] = new Array('p'+".$i.", '".$titre.$i."');";
    }
    echo "</script>";
    ?>
    EDIT
    grilled

  4. #4
    Membre �clair� Avatar de nicoaix
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    D�cembre 2004
    Messages
    571
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 50
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur d�veloppement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 571
    Par d�faut
    Effectivement �a fonctionne comme �a mais je ne comprend pas pourquoi avec ma m�thode �a fonctionne pas. C'est pas grave je m'en contenterai pour le moment.

    Merci.

  5. #5
    Expert confirm�
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    D�tails du profil
    Informations personnelles :
    �ge : 49

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Par d�faut
    il te manquait les " autour de <?=$titre?>+<?=$i?> :

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [PHP-JS] Probl�me de JavaScript avec PHP ?
    Par MaTHieU_ dans le forum Langage
    R�ponses: 9
    Dernier message: 03/08/2006, 22h27
  2. [PHP-JS] probl�me m�lange javascript et php
    Par ahmet57 dans le forum Langage
    R�ponses: 4
    Dernier message: 21/06/2006, 10h18
  3. [PHP-JS] probl�me de javascript avec php
    Par ph_anrys dans le forum Langage
    R�ponses: 9
    Dernier message: 02/03/2006, 10h34
  4. [PHP-JS] probl�me Alert Javascript
    Par vincedjs dans le forum Langage
    R�ponses: 5
    Dernier message: 28/02/2006, 12h51
  5. [PHP-JS] Arguments PHP d'une fonction javascript
    Par N�o-Tony dans le forum G�n�ral JavaScript
    R�ponses: 9
    Dernier message: 22/12/2004, 12h06

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