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

jQuery Discussion :

récup valeur checkbox et envoi php


Sujet :

jQuery

  1. #21
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Et ils ont tous la même value ...
    bah oui, déjà ca remonte que les checkbox qui sont cochées, comme je te disais dans un autre post.

    ensuite, je récupère valeur 1 si coché pour envoi en bdd
    donc le principe que tu proposais me paraissait tout à fait valable
    un array en entrée, un array du post, puis in_array et on récupère, j'avais bien compris le principe

    qu'est ce qui te choque ? ce n'est plus faisable ?

  2. #22
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    oui donc comment tu différencie 1 de 1 ou encore de 1 ???



    mets leur les valeur des indexes de l'array !!!!!!!!!
    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. #23
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    oui donc comment tu différencie 1 de 1 ou encore de 1 ???


    mets leur les valeur des indexes de l'array !!!!!!!!!
    voià une chose que nous n'avions pas encore testé !
    et ce que donne le var_dump de $_POST['choice_type]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
     array
          0 => string '1' (length=1)
          1 => string '3' (length=1)
          2 => string '4' (length=1)
          3 => string '6' (length=1)
    pour 4 checkbox

    ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $check[$value] = in_array($key,$_POST['choice_type'][$key],true);
    provoque erreur Warning: in_array() expects parameter 2 to be array, string given
    et sans le [key]
    cela me fait le meme résultat qu'avant :
    seulement 2 entrées !!
    var dump de $check
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    array
      1 => boolean false
      0 => boolean false
    pourquoi seulement 2 keys alors que j'ai 4 box de cochées !

    c'est bizarre non ?

    merci de ton aide

  4. #24
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Cet array me plait plus...
    un autre post car l'autre post a été en doublon !

  5. #25
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Voici un exemple fonctionnel ...
    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
    23
    24
    25
    26
    27
    28
    29
    30
    <html>
    <head>
     
    </head>
    <body>
    <?php
    if(!empty($_POST['sub'])){
        $tab=array("un"=>false,"deux"=> false,"trois"=>false, "quatre"=>false, "cinq"=> false,"six"=> false, "sept"=>false,"huit"=> false);
        
        if(!empty($_POST['checks'])){
        foreach ($tab as $key=>$val){
          $tab[$key]=in_array($key,$_POST['checks']);
        }
        }
        echo json_encode($tab);
       
        } ?>
    <form method="post" action="zzz.php" name="myfome" enctype="multipart/form-data" >
    <input type="checkbox" name="checks[]" value="un" /><br/>
    <input type="checkbox" name="checks[]" value="deux" /><br/>
    <input type="checkbox" name="checks[]" value="trois" /><br/>
    <input type="checkbox" name="checks[]" value="quatre" /><br/>
    <input type="checkbox" name="checks[]" value="cinq" /><br/>
    <input type="checkbox" name="checks[]" value="six" /><br/>
    <input type="checkbox" name="checks[]" value="sept" /><br/>
    <input type="checkbox" name="checks[]" value="huit" /><br/>
    <input type="submit" value="go" name="sub"/>
    </form>
    </body>
    </html>
    l'array coté serveur est bien représentatif des checkboxes cochés même si les checks non cochés ne sont pas transmis ...
    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 !

  6. #26
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Voici un exemple fonctionnel ...
    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
    23
    24
    25
    26
    27
    28
    29
    30
    <html>
    <head>
     
    </head>
    <body>
    <?php
    if(!empty($_POST['sub'])){
        $tab=array("un"=>false,"deux"=> false,"trois"=>false, "quatre"=>false, "cinq"=> false,"six"=> false, "sept"=>false,"huit"=> false);
        
        if(!empty($_POST['checks'])){
        foreach ($tab as $key=>$val){
          $tab[$key]=in_array($key,$_POST['checks']);
        }
        }
        echo json_encode($tab);
       
        } ?>
    <form method="post" action="zzz.php" name="myfome" enctype="multipart/form-data" >
    <input type="checkbox" name="checks[]" value="un" /><br/>
    <input type="checkbox" name="checks[]" value="deux" /><br/>
    <input type="checkbox" name="checks[]" value="trois" /><br/>
    <input type="checkbox" name="checks[]" value="quatre" /><br/>
    <input type="checkbox" name="checks[]" value="cinq" /><br/>
    <input type="checkbox" name="checks[]" value="six" /><br/>
    <input type="checkbox" name="checks[]" value="sept" /><br/>
    <input type="checkbox" name="checks[]" value="huit" /><br/>
    <input type="submit" value="go" name="sub"/>
    </form>
    </body>
    </html>
    l'array coté serveur est bien représentatif des checkboxes cochés même si les checks non cochés ne sont pas transmis ...
    me semble ne pas être loin dans mon code ..
    que donne un var_dump sur ton $tab?

  7. #27
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    le json encode me retourne

    {"un":false,"deux":false,"trois":false,"quatre":false,"cinq":false,"six":false,"sept":false,"huit":false}
    sans aucun check coché

    ou

    {"un":true,"deux":false,"trois":true,"quatre":false,"cinq":true,"six":false,"sept":true,"huit":false}
    avec un sur deux coché par exemple
    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 !

  8. #28
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    pfff je ne comprend pas !!!!
    voilà mes 3 tableaux
    respectivement : l'array total des checkbox, les chekbox cochées, et le var_dump sur $check !
    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
     
     
    Array
    (
        [1] => 1
        [2] => 0
        [3] => 1
        [4] => 1
        [5] => 0
        [6] => 0
    )
     
    Array
    (
        [0] => 1
        [1] => 3
        [2] => 4
    )
     
    array
      1 => boolean false
      0 => boolean false
    voilà mon code total, car ton code est très clair , mais je ne vois pas où le mien pèche !
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    $Ltyp = "SELECT rt.id AS idType,  	rt.nom_type AS nomType, 	rtl.active AS active FROM ".$wpdb->tbl_RATING_TYP." rt INNER JOIN " .$wpdb->tbl_RATE_TYP_LIST ." rtl ON rt.id = rtl.id_type WHERE statut=1 GROUP BY rt.nom_type ORDER BY rt.id ASC";
     
    		echo $Ltyp;
    		$listTypesPossible = $wpdb->get_results($Ltyp);	
     
    		foreach ($modifLists as $modifListe)
    		{
    				echo "<tr><td valign=middle><input type=\"text\" name=\"choice_nom_list\" value=\"" . $modifListe->nom_list . "\"/></td>\n";
    				echo "<td><select name=\"choice_statut_list\">".$selectStatutList."</select></td>\n";
    				echo "<td>";
    				echo "<table cellpadding=3 id=\"listeTypesChoix\">\n";
     
    				$malisteEntree = array();
     
    				foreach ($listTypesPossible as $listPossibleType) {
    					$malisteEntree[$listPossibleType->idType] = $listPossibleType->active;
    					$active = ($listPossibleType->active == 1) ? 'checked = "checked"' : '';
    					echo "<tr><td>" . $listPossibleType->nomType . "</td><td><input type=\"checkbox\" name=\"choice_type[]\" id=\"". $listPossibleType->idType . "\" value=\"". $listPossibleType->idType . "\" " . $active . " /></td></tr>\n";
    				} 
     
    				echo "</table>";
    				echo "</td>";
    				echo '<tr><td colspan="4" align="center"><input type="submit" name="submit" value="Modifier" /></td></tr>';
    		}	
    			//echo "<pre>"; print_r($malisteEntree); echo "</pre>";
    				echo "</table>";
    				echo "</form>";
     
    				echo "<pre>";
    				print_r($malisteEntree);
    				echo "</pre>";
    				echo "<pre>";
    				print_r($_POST['choice_type']);
    				echo "</pre>";/**/
    				$check = array();
     
    				if(!isset($_POST['choice_type'])){
    					// aucun check n'est coché
    						foreach ($malisteEntree as $key => $value){
    						$check[$value]=false;
    						}
    					}
    					else
    					{
    					//au moins un check est coché
    						foreach ($malisteEntree as $key => $value){
    							//$check[$value] = in_array($key,$_POST['choice_type'][$key],true);
    							$check[$value] = in_array($key,$_POST['choice_type'],true);
    						}
    						var_dump($check);
    					}

  9. #29
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    Côte php il est ou l'array des values possibles ?
    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 !

  10. #30
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Côte php il est ou l'array des values possibles ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $malisteEntree[$listPossibleType->idType] = $listPossibleType->active;
    le voilà; c'est lui qui génère le 1er tableau affiché dans le post précédent !

    il ne te parrait pas bien ?
    en sortie je ne vois rien de négatif !

  11. #31
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    si tu en fais un var_dump il te dit quoi ?
    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 !

  12. #32
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    si tu en fais un var_dump il te dit quoi ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    array
      1 => string '1' (length=1)
      2 => string '0' (length=1)
      3 => string '1' (length=1)
      4 => string '1' (length=1)
      5 => string '0' (length=1)
      6 => string '0' (length=1)
    les id des check et les valeurs reçues de bdd.

    merci

  13. #33
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    ids ? numériques

    un id ne jamais etre uniquement numérique ou commencer par du numérique ...

    Regarde dans mon exemple ...un array littéral
    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 !

  14. #34
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    ids ? numériques
    un id ne jamais etre uniquement numérique ou commencer par du numérique ...

    Regarde dans mon exemple ...un array littéral
    Ui je me rappelle ton exemple, je modifie en conséquence

    voilà le var_dump
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    array
      'chk1' => string '1' (length=1)
      'chk2' => string '0' (length=1)
      'chk3' => string '1' (length=1)
      'chk4' => string '1' (length=1)
      'chk5' => string '0' (length=1)
      'chk6' => string '0' (length=1)
    le var_dump de$check
    donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    array
      1 => boolean false
      0 => boolean false
    pourquoi ???, pourquoi un id ne doit jamais être numérique ? on voit souvent les array avec des numériques !

  15. #35
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    115
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 115
    Points : 43
    Points
    43
    Par défaut
    hello

    bon bah voilà, longtemps après, j'ai appliqué ce que tu m'as conseillé

    retourné sur le probleme, retourné encore
    j'ai résolu
    exactement comme tu me disais..
    merci de ton aide
    et désolé d'avoir été un boulet sur le truc !

    ^^ A+

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. recuperer les valeurs checkboxs PHP affichées avec une boucle
    Par programmatrice dans le forum Langage
    Réponses: 1
    Dernier message: 07/04/2012, 19h36
  2. envoi de checkbox dans formulaire php
    Par baraufranck dans le forum Langage
    Réponses: 13
    Dernier message: 02/12/2010, 22h32
  3. Insertion de valeurs checkbox (PHP/MySQL)
    Par Starmagh dans le forum Langage
    Réponses: 11
    Dernier message: 23/11/2010, 00h54
  4. [MySQL] Envoie de valeur Checkbox
    Par runner77 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 15/01/2009, 12h28
  5. [MySQL] Récup valeur checkbox cochée
    Par michel81 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 09/12/2008, 22h48

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