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 :

soucis avec valeur d'un tableau de checkbox [PHP 5.0]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 38
    Par défaut soucis avec valeur d'un tableau de checkbox
    Hello,

    Pouvez-vous me dire pourquoi ce formulaire retourne une valeur fausse, uniquement pour le champ checkbox ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
            echo '<form  action="/action.php" method="post" >';
     
     
            for($i=0;$resultat = mysql_fetch_array($result);$i++){
     
                            echo '<input type="text"  name="name[]" value="'.$resultat['name'].'" />';
                            echo '<input type="checkbox" name="typeMask[]" value="1"  />';
            }
            echo '<input type="submit" value="ok" /></form>';
    Lorsqu j'affiche le resultat dans action.php la valeur de $_POST[name][] est bonne mais
    la valeur de $_POST[type][] est décallée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    echo $_POST[name][0].$_POST[typeMask][0].'<br>';
    echo $_POST[name][1].$_POST[typeMask][1].'<br>';
    echo $_POST[name][2].$_POST[typeMask][2].'<br>';
    echo $_POST[name][3].$_POST[typeMask][3].'<br>';
    En effet, si je coche la checkbox pour la 4eme ligne, je m'attends a recuperer la valeur 1 dans $_POST[typeMask][3], mais bizarrement je trouve 0 et 1 dans $_POST[typeMask][0]. Merci de votre aide.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu ne peux pas faire ainsi puisque celle les checkbox cochées renvoient quelque chose.

    Donc si tu coches la 4eme seulement, tu recevras $_POST['typeMask'][0] = 1

    Tu peux plutot indexer ton tableau avec l'index de ta table :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<input type="checkbox" name="typeMask[' . $resultat['id'] . ']" value="1"  />';
    tu sauras ainsi quelle ligne a été cochée.

    Tu noteras au passage que les index des tableaux prennent des guillemets quand ils ne sont pas numériques.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 38
    Par défaut
    Ah génial, j'ai passè plusieurs heures de combat intense avec ce soucis, je te remercie grandement pour ton aide !

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 29/01/2009, 12h32
  2. [DBEXPRESS] Soucis avec valeur Isnull.
    Par newbie57 dans le forum Bases de données
    Réponses: 4
    Dernier message: 12/03/2008, 11h41
  3. Tableau JS avec valeurs PHP
    Par Gobouz dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 19/04/2006, 11h28
  4. souci avec le format des valeurs numériques.
    Par LESOLEIL dans le forum Langage
    Réponses: 9
    Dernier message: 05/04/2006, 16h12
  5. [VB6] recuperer des valeurs ds un tableau html avec vb!!
    Par leo13 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/12/2004, 13h02

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