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 :

[Tableaux] pb avec les checkbox


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut [Tableaux] pb avec les checkbox
    bonjour, je suis en stage et je dois reprendre le code d'une autre personne.
    Celui-ci représente un tableau contenant pour chaque ligne un client, et on m'a demandé de mettre une checkbox en plus par ligne.

    j'ai mis

    <input type = checkbox name ="caz[]" value ="vrai"> Déjà là je suis pas sur de moi

    Car il existe un bouton, qui fait que lorsque l'on clique dessus, il reprend chaque ligne du tableau, ma case à cocher doit juste être vérifié en tant que coché ou non, puis si elle est coché le processus continu, ou pas à une ligne.

    Mais je ne sais pas comment faire ...

    Dois-je récupérer les valeurs de caz[] ?

    je ne sais pas comment écrire cela ...

    $i = 0
    if(caz[$i] == "vrai") ou autre chose ?

    J'espère que vous pourrez m'aider.

    Merci d'avance.

  2. #2
    Membre régulier Avatar de BGDC
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 102
    Points : 121
    Points
    121
    Par défaut
    Bonjour,

    essaye de regarder de cote : http://julp.developpez.com/php/formulaires/ , tu devrais trouver ton bonheur.
    Bon allez, cette fois c'est sur, ça marche........bon aller je réessaye......

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    merci

    Mais j'ai un autre problème surement tout con ...

    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
     
    if($test_compte == TRUE){
     
    			$nouv_lign.="
    					<td>
    			<input type='hidden' name='id_compte_".$res_fac_list['idpersonne'][$indx]."' value='".$res_fac_list['id_compte'][$indx]."' />
    			<input type='hidden' name='".$genere_fac_ID."' value='".$genere_fac_ID."' />
    			<input type='hidden'name='cons_tel_".$res_fac_list['idpersonne'][$indx]."' value='".$cons_tel."'/>
     
    			        <input type="checkbox" name="caz[]" value="vrai"></td> [color=red]c'est ici que j'ai ma checkbox[/color]
    					<td>".$res_fac_list['id_compte'][$indx]."</td>
    					<td>".$res_fac_list['nom'][$indx]."</td>
    					<td>".$res_fac_list['prenom'][$indx]."</td>
    					<td width='100'>".$action."</td>
    					<td>".$res_fac_list['date_validation'][$indx]."</td>
    					<td>
    Mais j'ai cela comme erreur :

    Parse error: parse error, unexpected T_STRING in

    et la ligne correspond à ma checkbox ... je ne comprend pas mon erreur.

  4. #4
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    salut =)

    devant les " il faut mettre le caractère d'echappement '\', ce qui donne ça :
    $ligne = "<input type=\"checkbox\" name=\"opopop\">";
    "Des Lapins ? Mais on est pressés... ça devrait aller... Tu crois pas ?"

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    merci beaucoup

    C'est bizarre je l'avais déjà fait auparavant et je n'avais pas eu ce problème.

    Mais merci encore une fois

  6. #6
    Membre régulier Avatar de Luffy Duck
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 165
    Points : 120
    Points
    120
    Par défaut
    Pense à mettre le tag Résolu
    "Des Lapins ? Mais on est pressés... ça devrait aller... Tu crois pas ?"

  7. #7
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    avant de mettre résolu, je voulais savoir un truc car j'ai posé un premier promblème et on m'a répondu d'aller voir une autre page, j'ai été voir, mais je n'arrive pas à résoudre mon problème, car je ne sais pas comment faire pour vérifier ma checkbox, ou laors je le fais mal :

    <input type="checkbox" name="caz[]" value="vrai">

    ensuite dans la page de traitement :

    je mets juste : if($caz)

    mais cela ne fonctionne pas.

    dois-je mettre if($caz[$i]) en ayant auparavant initialiser la variable $i à 0 ?

    edit : j'ai mis if($caz[$i]) et en l'incrémentant à la fin du processus, mais il me mets l'erreur Parse error, mais cette fois ça ne peut pas être comme tout à l'heure avec les '\'

  8. #8
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    Je ne comprends ce que l'erreur citée ci-dessus peut signifier, car sur la ligne qu'il indique, c'est une '}' et au-dessus c'est mon incrémentation de mon '$i++' ...

  9. #9
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Fais un var_dump($caz), comme ça tu verra ce que contient exactement ton tableau et tu pourras paramétrer ta boucle.

  10. #10
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    j'ai mis ce que tu m'as dit au-dessus de mon code mais rien, il me remet la même erreur.

    comme j'ai expliqué au dessus une personne a fait le code avant moi, donc il y a deja un foreach qui prend toutes les lignes du tableau où sont les clients.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $i = 0;
    foreach($_POST as $item => $valeur_fac)		
     {if (isset($_POST[$item]))
       { if ($caz[$i]=="vrai")
    	 {	if ( strstr($item, 'genere_fac') != FALSE)
    j'ai rajouté la variable $i et le "if($caz[$i]=="vrai")"

    puis à la fin j'aincrémente $i++

    et apparemment c'est à ce niveau que ça coince.

  11. #11
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Bon, tu commentes la prtie de code qui traite les données envoyées par ton formulaire et tu fais un var_dump($post) si ton formulaire est envoyé avec la méthode post, (si c'est avec get, tu as déjà la réponse dans l'url de ta page) là tu auras toutes les données qui sont transmises depuis le formulaire et à ce moment, tu analyses tes données pour adapter ta boucle.

  12. #12
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    bon j'ai compplètement changé, j'ai mis ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     $case=$_POST[caz];
       { if (!empty($case))
    alors si je ne coche pas, ça marche , rien ne s'affiche quand je clique sur mon boutton, mais si je coche une case d'un client, et que je clique sur le boutton, j'obtiens tous les comptes et non seulement celui qui est coché...

  13. #13
    Expert éminent 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
    Points : 6 449
    Points
    6 449
    Par défaut
    que donne le resultat de var_dump($caz) ???

  14. #14
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    hé bien ... je n'ai rien eu d'afficher

  15. #15
    Expert éminent 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
    Points : 6 449
    Points
    6 449
    Par défaut
    essaye ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump('XXX<pre>',$caz,'</pre>');
    Puis tu recherche la chaine XXX dans le source, le resultat est après.

  16. #16
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    j'obtiens ça en plus dans le code source :

    string(8) "XXX<pre>"
    NULL
    string(6) "</pre>"

  17. #17
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    personne ne peut m'aider?

  18. #18
    Expert éminent 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
    Points : 6 449
    Points
    6 449
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump('<pre>',$_POST,'</pre>');
    :

  19. #19
    Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 110
    Points : 48
    Points
    48
    Par défaut
    rebonjour, alors avec la ligne ci-dessous, j'obtiens ceci :

    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
     
    string(5) "<pre>"
    array(19) {
      ["val_TVA"]=>
      string(4) "19.6"
      ["jour_edit_fac"]=>
      string(2) "10"
      ["mois_edit_fac"]=>
      string(2) "01"
      ["annee_edit_fac"]=>
      string(4) "2006"
      ["mois_deb_fac"]=>
      string(2) "01"
      ["annee_deb_fac"]=>
      string(4) "2006"
      ["id_compte_2"]=>
      string(9) "qvanhoute"
      ["genere_fac2"]=>
      string(11) "genere_fac2"
      ["cons_tel_2"]=>
      string(1) "0"
      ["action0"]=>
      string(11) "**Actions**"
      ["prix_fac2"]=>
      string(4) "14.9"
      ["telephonie_2"]=>
      string(3) "Non"
      ["id_compte_3"]=>
      string(7) "jdubois"
      ["genere_fac3"]=>
      string(11) "genere_fac3"
      ["cons_tel_3"]=>
      string(1) "0"
      ["action1"]=>
      string(11) "**Actions**"
      ["prix_fac3"]=>
      string(4) "19.9"
      ["telephonie_3"]=>
      string(3) "Oui"
      ["Submit"]=>
      string(20) "Générer les factures"
    }
    string(6) "</pre>"
    cela correspond aux informations proposées dans la page où se trouvent les checkbox

  20. #20
    Expert éminent 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
    Points : 6 449
    Points
    6 449
    Par défaut
    tu as coché des checkbox ?

Discussions similaires

  1. Problème avec les checkbox
    Par presteus dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/07/2006, 01h06
  2. Bug avec les CheckBox
    Par L4BiN dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 19/06/2006, 16h47
  3. [Tableaux] Probleme avec les switch
    Par grumly22 dans le forum Langage
    Réponses: 9
    Dernier message: 10/04/2006, 10h51
  4. [Tableaux] Problème avec les boucles
    Par speed_man002 dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 15h42
  5. Pb avec les checkbox: tout sélectionner,récupération valeurs
    Par bubble_gum dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/10/2004, 17h42

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