Checkbox selected lors d'un rafraichissement

hackulous
Invité n'ayant pas de compte PHPfrance

08 nov. 2010, 12:43

Bonjour,

j'ai un formulaire (php/html) avec gestion des erreurs.
Lors d'un rafraichissement d'une page, je voudrais que le(s) checkbox reste(nt) cocher, j'ai fais quelque bidouille mais rien ne se passe, voici la source...
je ne veux pas de javascript... seulement en php je ne sais pas quoi mettre dans le formulaire input du checkbox
avant le doctype:
if (isset($_POST["type[]"])) {
$type=$_POST["type[]"];
}

Dans le formulaire :
<li id="li_5" >
		<label class="description" for="type[]">Quel(s) type(s) de machine(s) ou distributeur(s) souhaitez-vous ? * </label>
		<span>
			<input id="element_5_1" name="type[]" class="element checkbox" type="checkbox" value="Machine à café de bureau" <?php if (isset ($_POST['test'][0])){ echo "CHECKED";}) ?>/>
					<label class="choice" for="element_5_1">Machine à café de bureau (machine à dosettes, capsules, etc...)</label>
			<input id="element_5_2" name="type[]" class="element checkbox" type="checkbox" value="Distributeur automatique de boissons chaudes" <?php  if (isset ($_POST['test'][0])){ echo "CHECKED";}) ?>/>
					<label class="choice" for="element_5_2">Distributeur automatique de boissons chaudes</label>
			<input id="element_5_3" name="type[]" class="element checkbox" type="checkbox" value="Distributeur automatique de boissons fraîches" <?php  if (isset ($_POST['test'][0])){ echo "CHECKED";}) ?>/>
					<label class="choice" for="element_5_3">Distributeur automatique de boissons fraîches</label>

		</span> 
		</li>

hackulous
Invité n'ayant pas de compte PHPfrance

08 nov. 2010, 12:45

ne faite pas attention à
 $_POST['test'][0])
c'est plutot
$_POST['type'][0])

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

08 nov. 2010, 22:42

lu,

pourquoi toujours $_POST['type'][0] dans tout les champs input ?

au pire utilise un truc du genre if ( in_array($_POST['type'],'valeur du champ cible')) echo 'checked="checked"';

@+
Il en faut peu pour être heureux ......

Invité
Invité n'ayant pas de compte PHPfrance

09 nov. 2010, 12:02

merci mais les cases ne restent pas cochées mais quand je fais un echo de $_POST['type'] j'ai bien les valeurs;

Eléphanteau du PHP | 17 Messages

09 nov. 2010, 13:09

<?php if( isset($_POST['type']) && (in_array($_POST['type'],'Machine à café de bureau'))){ echo "CHECKED";}   ?>
j'obtiens l'erreur "in_array() expects parameter 2 to be array, string given "
MSI GT725, Vista apparence Windows Standart, Mozilla...

Le no life répond "Counter Strike : Source"
Le geek répond "Cascading Style Sheets"

ViPHP
ViPHP | 5462 Messages

09 nov. 2010, 13:13

inverse les paramètres

Eléphanteau du PHP | 17 Messages

09 nov. 2010, 13:23

Merci
et pour mettre le poste en Résolu c'est où ? lol
MSI GT725, Vista apparence Windows Standart, Mozilla...

Le no life répond "Counter Strike : Source"
Le geek répond "Cascading Style Sheets"

ViPHP
ViPHP | 5462 Messages

09 nov. 2010, 13:27

Merci
et pour mettre le poste en Résolu c'est où ? lol
comme t'était pas inscrit tu peux pas, si un modo passe dans le coin il le fera :wink:

Eléphanteau du PHP | 17 Messages

09 nov. 2010, 13:40

merci !
MSI GT725, Vista apparence Windows Standart, Mozilla...

Le no life répond "Counter Strike : Source"
Le geek répond "Cascading Style Sheets"