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 :

Acces à une variable-tableau de PHP


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Acces à une variable-tableau de PHP
    Bonjour,

    Voici mon code PHP (extrait) :

    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
    20
    21
    22
     
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function coche(ligne) {
    	alert(document.formdel.typeSuppression[ligne].length)
    	//-->
    }
    </SCRIPT>			
    <?php
    echo "<form name='formdel' method='post' action='delsessions.php?supOK=1'>";
    echo "<TABLE>";
    $i = 0;
    while($i<2)
    {
    echo "<TR>";
    echo "<TD><INPUT type='checkbox' name='sup[$i]' value='sup' onclick='coche($i);'></TD>";
    echo "<TD><INPUT name='typeSuppression[$i]' type='radio' value='1'></TD>";
    echo "<TD><INPUT name='typeSuppression[$i]' type='radio' value='2'></TD>";
    echo "<TD><INPUT name='typeSuppression[$i]' type='radio' value='3'></TD></TR>";
    $i++;
    }
    echo "</TABLE>";
    voici le code généré :

    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
     
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function coche(ligne) {
    	alert(document.formdel.typeSuppression[ligne].length)
    	//-->
    }
    </SCRIPT>			
    <form name='formdel' method='post' action='delsessions.php?supOK=1'>
    <TABLE><TR>
    <TD><input type='checkbox' name='sup[0]' value='sup' onclick='coche(0);'></TD>
    <TD><INPUT name='typeSuppression[0]' type='radio' value='1'></TD>
    <TD><INPUT name='typeSuppression[0]' type='radio' value='2'></TD>
    <TD><INPUT name='typeSuppression[0]' type='radio' value='3'></TD></TR>
    <TR>
    <TD><input type='checkbox' name='sup[1]' value='sup' onclick='coche(1);'></TD>
    <TD><INPUT name='typeSuppression[1]' type='radio' value='1'></TD>
    <TD><INPUT name='typeSuppression[1]' type='radio' value='2'></TD>
    <TD><INPUT name='typeSuppression[1]' type='radio' value='3'></TD></TR></TABLE>
    Mais j'ai une erreur sur l'alerte Javascript : "ce n'est pas un objet", donc la fonction ne fonctionne pas car typeSuppression[ligne] n'est pas reconnu par le Javascript.

    Pourriez-vous me dire comment je peux utiliser dans le Javascript la variable-tableau 'typeSuppression[$i]' du PHP ?

    Merci.

    Renaud

  2. #2
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<TD><INPUT name='".typeSuppression[$i]."' type='radio' value='3'></TD></TR>";
    Il faut que tu sortes ta variables php du texte sinon elle est pas reconne comme variable

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Désolé, ce que tu indiques ne fonctionne pas.
    'typeSuppression[$i]' n'est pas une variable PHP, c'est un champ HTML dont le nom est indicé par du PHP.
    Et, tel que je l'ai écrit, Javascript ne reconnaît pas 'typeSuppression[0]' et 'typeSuppression[1]'.
    J'ai cette erreur exacte : 'document.formdel.typeSuppression' a la valeur Null ou n'est pas un objet'

  4. #4
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    alert(document.formdel.elements["typeSuppression["+ligne+"]"].length)

  5. #5
    Membre chevronné Avatar de Oluha
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 183
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 183
    Points : 1 967
    Points
    1 967
    Par défaut
    ah excuse j'avais pas bien lu
    L'erreur est un problème d'indice qui déborde, le code de matthieu devrait t'aider à trouver

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Super, c'est ça, merci beaucoup.

    Renaud

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

Discussions similaires

  1. Problème d'accès à une variable dans un tableau
    Par Bundy*Al dans le forum Langage
    Réponses: 1
    Dernier message: 11/09/2013, 11h44
  2. Réponses: 1
    Dernier message: 24/09/2007, 09h49
  3. [AJAX] Envoyer une variable tableau à un script PHP
    Par AzertyH dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 01/02/2007, 16h58
  4. [Mail] Equivalence d'une "variable" asp en php
    Par xender dans le forum Langage
    Réponses: 14
    Dernier message: 06/12/2005, 14h32
  5. Réponses: 4
    Dernier message: 05/10/2005, 18h19

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