J'ai un tableau de cases à cocher que je modifie à la fois pour mettre en place un champ 'tinyint'. le problème vient quand je décoche la case à cocher et affiche les vales à mysql. comme il affiche un tableau de cases à cocher et un autre tableau parallèle de valeurs à éditer, décocher une case à cocher dans la valeur 0
a été ignoré par PHP_POST et donc le tableau de cases à cocher sera inférieur au nombre de valeurs non cochées dans le formulaire alors que le tableau sera édité aura tous les enregistrements dans le formulaire.cases à cocher php mysql parallel array
ici est le soumettre le code
while($row=mysql_fetch_array($result))
{
$checked = ($row[active]==1) ? 'checked="checked"' : '';
...
echo "<input type='hidden' name='TrID[]' value='$TrID'>";
echo "<input type='checkbox' name='active1[]' value='$row[active]''$checked' >";
...
et le script de traitement php
$userid = ($_POST['TrID']);
$checked= ($_POST['active']);
$i=0;
foreach ($userid as $usid)
{
if ($checked[$i]==1){
$check = 1;
}
else{
$check = 0;
}
$qry1 ="UPDATE `epapers`.`clientelle` SET `active` = '$check' WHERE `clientelle`.`user_id` = '$usid' ";
$result = mysql_query($qry1);
$i++;
}
Le problème est qu'il n'y a rien POSTed pour une case à cocher non cochée ... – Franz