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 :

probleme sur checkbox


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 78
    Par défaut probleme sur checkbox
    Bonjour,
    Je rencontre un probleme pour récupérer mes données sélectionnées par un checkbox.
    J'ai trouvé sur ce même forum une méthode mais apparement j'ai un bug. Ca fonctionne pour un select multiple,
    mais pas pour les checkbox. seul le premier élément sélectionné est pris en compte, je ne peux pas en sélectionner plusieurs.
    Je joins mon code, vraisemblablement l'erreur sautera aux yeux d'un oeil neuf, perso je m'use les yeux à rien voir.

    le formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    	<td class='smallText'>
    				<input type='checkbox' name='choix[]' value 'public'>Public
    				<input type='checkbox' name='choix[]' value 'revendeurs1'>revendeurs1
    				<input type='checkbox' name='choix[]' value 'revendeurs2'>revendeurs2
    				<input type='checkbox' name='choix[]' value 'revendeurs3'>revendeurs3</td>
                    <td align="left"><?php if ($file_writeable) { echo tep_image_submit('button_save.gif', IMAGE_SAVE) . '&nbsp;<a href="' . tep_href_link(FILENAME_DEFINE_MAINPAGE, 'lngdir=' . $HTTP_GET_VARS['lngdir']) . '">' . tep_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>'; } else { echo '<a href="' . tep_href_link(FILENAME_DEFINE_MAINPAGE, 'lngdir=' . $HTTP_GET_VARS['lngdir']) . '">' . tep_image_button('button_back.gif', IMAGE_BACK) . '</a>'; } ?></td>
                  </tr>
    le script pour récupérer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    foreach ($choix as $customers_groups_id) {
    		  		$actus_query = "select text_actus from actus WHERE customers_groups_id='" . (int)$customers_groups_id . "'";
    							$actus_req = tep_db_query($actus_query);
    							$text_val = tep_db_fetch_array($actus_req);
    							if ($customers_groups_id > 0){$file_actus = $text_val['text_actus'];}
    							else {$file_actus='/var/www/html/includes/languages/french/Default_actus.php';}
    		  		$save_actus = fopen($file_actus,'w');
              		$file_contents = stripslashes($HTTP_POST_VARS['file_contents']);
              		fwrite($save_actus, $file_contents, strlen($file_contents));
    		  		fclose($file_actus);
    			}
    Merci pour votre aide

  2. #2
    Membre éclairé
    Avatar de titoon
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 71
    Par défaut
    Il manque un = après value dans tes checkbox...

    Si ça ne fonctionne toujours pas, à quoi correspond $customers_groups_id ?

  3. #3
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 78
    Par défaut
    OK pour le =
    Mais l'erreur ne vient pas de là.Le $customers_group_id est une variable récupérée en base.
    Le même script fonctionne avec un select multiple. Je suppose qu'il y a quelque part une différence de traitement,pour que ça marche.

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 194
    Par défaut
    mets des echo pour voir ce que tu recuperes comme valeurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $actus_query = "select text_actus from actus WHERE customers_groups_id='" . (int)$customers_groups_id . "'";
    pour ce qui est de la requête, tu récupères des chaines de caractères et tu le transformes en (int), t'auras toujours dans la requête: customers_groups_id = 0

    autre chose, si tu ne coches aucun checkbox, la variable n'est pas défini car elle n'est pas envoyée.

  5. #5
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 78
    Par défaut [resolu]probleme sur checkbox
    Mon erreur venait du paramètre dans value.
    je mettais value='public' au lieu de value='1'. le 1 étant la valeur du customers_group_id à récupérer.
    Merci à tous

  6. #6
    Membre chevronné Avatar de mathieugamin
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 572
    Par défaut
    Si tu as trouvé la réponse, pense à mettre , ça aide tout le monde à chercher efficacement dans le forum et ça économise le temps de ceux qui ont la gentillesse de répondre...

    Merci

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/07/2011, 12h04
  2. Probleme avec setChecked() sur CheckBox
    Par j0o0 dans le forum Android
    Réponses: 2
    Dernier message: 10/03/2011, 14h52
  3. Probleme de boucle sur checkbox
    Par nuFox dans le forum VBA Access
    Réponses: 10
    Dernier message: 05/12/2008, 14h25
  4. Réponses: 3
    Dernier message: 07/04/2003, 20h06
  5. Probleme sur les chaines de caractere
    Par scorpiwolf dans le forum C
    Réponses: 8
    Dernier message: 06/05/2002, 19h01

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