Php et checkbox ; le tableau est toujours vid
karine_b
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
jonastuces Messages postés 45 Date d'inscription Statut Membre Dernière intervention -
jonastuces Messages postés 45 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voilà, j'ai un ptit soucis en php.. un bug fantôme...
voilà mon code ;
<form method='POST' action='process.php'>
Merci de cocher vos 2 couleurs préférées:<br>
<input type="checkbox" name="couleur[]" value="jaune"> Jaune<br>
<input type="checkbox" name="couleur[]" value="bleu"> Bleu<br>
<input type="checkbox" name="couleur[]" value="vert"> Vert<br>
<input type="checkbox" name="couleur[]" value="orange"> Orange<br>
<input type="checkbox" name="couleur[]" value="rouge"> Rouge<br>
<input type="submit" name="exple2" value="Résultats">
</form>
<?
$ctrl=sizeof($couleur);
if($ctrl!=2 ){
echo"Attention vous n'avez pas cochez le bon nombre de cases !!";
exit;
}
else{
echo"Vous avez choisi comme couleurs:<br>";
foreach ($couleur as $valeur){
echo"le ". $valeur.".<br>";
}
}
?>
ca parait tout bête, non ? et bien le soucis est le suivant ;
quoique je coche, j'ai TOUJOURS le meme message : "Attention vous n'avez pas cochez le bon nombre de cases !!"
Comprends pas... comme si le tableaune remplissait jamais...
please help ^_^
@+ bisous
voilà, j'ai un ptit soucis en php.. un bug fantôme...
voilà mon code ;
<form method='POST' action='process.php'>
Merci de cocher vos 2 couleurs préférées:<br>
<input type="checkbox" name="couleur[]" value="jaune"> Jaune<br>
<input type="checkbox" name="couleur[]" value="bleu"> Bleu<br>
<input type="checkbox" name="couleur[]" value="vert"> Vert<br>
<input type="checkbox" name="couleur[]" value="orange"> Orange<br>
<input type="checkbox" name="couleur[]" value="rouge"> Rouge<br>
<input type="submit" name="exple2" value="Résultats">
</form>
<?
$ctrl=sizeof($couleur);
if($ctrl!=2 ){
echo"Attention vous n'avez pas cochez le bon nombre de cases !!";
exit;
}
else{
echo"Vous avez choisi comme couleurs:<br>";
foreach ($couleur as $valeur){
echo"le ". $valeur.".<br>";
}
}
?>
ca parait tout bête, non ? et bien le soucis est le suivant ;
quoique je coche, j'ai TOUJOURS le meme message : "Attention vous n'avez pas cochez le bon nombre de cases !!"
Comprends pas... comme si le tableaune remplissait jamais...
please help ^_^
@+ bisous
A voir également:
- Php et checkbox ; le tableau est toujours vid
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Vid - Télécharger - TV & Vidéo
- Tableau croisé dynamique - Guide
merci de m'aider...
j'ai trouvé un exemple qui fonctionne, ce qui me fait dire qu'il y a peut etre un soucis ailleurs...
voilà ma situation ;
if (sizeof($_POST['selectedURL[]'])==0)
{
echo "rien du tout ";
}
if(!empty($_POST["modifier"]))
{
echo "j'ai cliqué sur modifier "."<br>";
echo ">".$_POST['selectedURL']."<";
}
<form id="toolbox" name="toolbox" method="post" >
<form id="Add_bookmark" name="Add_bookmark" method="post" >
<input name="URL_to_book" type="text" class="Style_Normal" id="URL_to_book" value="" size="100" />
<input name="add_book" type="submit" class="Style_Normal" id="add_book" value="Ajouter le favori" />
</form>
<input name="modifier" type="submit" class="Style_Normal" id="modifier" value="Modifier" />
toutes mes checkbox :
<input type="checkbox" name="selectedURL[]" value="6398" />
<input type="checkbox" name="selectedURL[]" value="6398" />
</form>
Et voilà, bref, à chaque fois que je clic sur Modifier, je passe dans
echo "j'ai cliqué sur modifier "."<br>";
echo ">".$_POST['selectedURL']."<";
et selectedURL est vide...
help !
j'avais 2 form imbriquées, et ca marchait pas !
en tous cas, merci de m'avoir accordée un peu de ton temps
smack tout plein
De rien en cas de problème n'hésite pas à me demander.
Bonne journée.
tadaaaa me revoilàààààà ! avec un nouveau soucis, mais je rassure le webmaster, c'est à propos des checkbox...
bref, j'ai fait comme on m'a dit... mes checkbox sont dans un tableau
<form name="monform">
<input type="checkbox" name="all"
onclick="selectall(document.monform.all,document.monform.choix)">
puis un liste de checkbox
<input type="checkbox" name="choix[]" value="1">
<input type="checkbox" name="choix[]" value="2">
<input type="checkbox" name="choix[]" value="3">
</form>
et je voudrais toutes les sélectionner... j'ai donc récupérer un javascript (merci google)
//checkbox ou une liste de checkbox.
function selectall(cas,choix){
//test si on a plusieur ligne
if(choix.length>0){
if (cas.checked){
for (var i=0; i<choix.length;i++){
choix[i].checked=true
}
}
else{
for (var i=0; i<choix.length;i++){
choix[i].checked=false
}
}
}
else{
if (cas.checked){
choix.checked=true
}
else{
choix.checked=false
}
}
}
mais je me suis aperçue que le javascript marchait pô... par contre, sans les crochets (voir ci dessous), il marche...
<form name="monform">
<input type="checkbox" name="all"
onclick="selectall(document.monform.all,document.monform.choix)">
puis un liste de checkbox
<input type="checkbox" name="choix" value="1">
<input type="checkbox" name="choix" value="2">
<input type="checkbox" name="choix" value="3">
</form>
mais du coup, c'est le php qui pêche ! Y a t il une autre méthode que celle ci ?
$mon_tableau = $_POST['choix'];
for($i=0; $i<sizeof($choix); $i++)
{ echo $mon_tableau[$i]; }
@+ bisoo
Pourquoi tu ne fais pas tout cela en PHP, tu appel tes checkbox choix1, choix2 et choix 3 et quand tu clique sur le bouton tu appel un page de traitement où tu teste si les checkbox sont sélectionner.
$Compteur = 1;
$Nombre = 0;
while($Compteur < 3){
$Name = "choix".$Compteur;
if($_POST['$Name]!= ''){
$Nombre++;
}
$Compteur++;
}
et là la variable $Nombre t'indique le nombre de case cochée.
Bonne soirée.