Checkbox et input texte

Mammouth du PHP | 725 Messages

19 mai 2014, 13:58

Bonjour,

Je verifie si une checkbox est cochee, l'input text en face DEVAIT etre remplis, si c'est le cas, je devais ajouter la valeur de ce champs a la valeur du checkbox, exemple:
Option 1: <input type="checkbox" name="code[]" value="op1">
<br />
Option 2: <input type="checkbox" name="code[]" value="op2">
<input type="text" name="comm">
<br />
Option 3: <input type="checkbox" name="code[]" vaue="op3">
<br />
si la 2eme option est cochee, on devait remplir le champs "comm"
            if(in_array('op2', $code)){
                if($comm == ''){ // check if comm value is filled
                    $error = 'Remplir le comm';
                }
            } 
jusqu'au la c'est bon, je recupere les donnees, alors ici, si je coche les 3 options, j'aurais op1, op2, et op3, mais op2 comprend une autre valeur, je veux avoir: op1, op2comm, et op3

Merci

ViPHP
xTG
ViPHP | 7331 Messages

19 mai 2014, 14:39

Il serait dans ce cas plus simple de faire ainsi :
Option 1: <input type="checkbox" name="code[0]" value="op1">
<br />
Option 2: <input type="checkbox" name="code[1]" value="op2">
<input type="text" name="comm">
<br />
Option 3: <input type="checkbox" name="code[2]" vaue="op3">
<br />
$_POST['code'][1] = $_POST['code'][1] . $_POST['comm'];
Avec bien sur les vérifications qui s'imposent, je ne montre que le principe.

Mammouth du PHP | 725 Messages

19 mai 2014, 16:19

y a pas d'autres solutions qui peuvent aider? dans mon cas j'aurais plus de 54 options, donc je devais faire un $_POST de 54 options.

ViPHP
xTG
ViPHP | 7331 Messages

19 mai 2014, 17:29

Si tu as un input pour chaque checkbox :
Option 1: <input type="checkbox" name="code[]" value="op1">
<input type="text" name="comm[]">
<br />
Option 2: <input type="checkbox" name="code[]" value="op2">
<input type="text" name="comm[]">
<br />
Option 3: <input type="checkbox" name="code[]" vaue="op3">
<input type="text" name="comm[]">
<br />
foreach($_POST['code'] as $key => $value)
{
   $_POST['code'][$key] = $_POST['code'][$key] . $_POST['comm'][$key];
}
Sinon ce n'est pas possible de le faire de façon automatisé. :)

Mammouth du PHP | 725 Messages

19 mai 2014, 20:58

merci xTG :)