Retenir statut checkbox cohées ou non !!

Bonjour,:D

J'ai parcouru le forum pour trouver des réponses à ma question mais sans succès. Je fais donc appel à vous.

J'ai une page sur laquelle j'ai des checkbox et une autre qui me sert à enregistrer le statut coché ou décoché de ces checkbox dans la base de données.

Je n'ai aucune erreur sql. Par contre, quand je coche une checkbox, c'est comme si je n'avais rien coché.

Voici le code de mes 2 pages:
-------------------------------------

page qui affiche les chekbox
-----------------------------------

Code:
connexion_DB('abscence');
$aff = mysql_query("SELECT ID_Image,Image_Name, Statut_Image_Report_01 FROM images")or die(mysql_error());

echo '<form method="post" action=update_reportage.php>';
echo '<table border=1>';  //DEBUT TABLEAU----------------------------------------------------------------------

while($row = mysql_fetch_array($aff))
{

$ID_Image=$row['ID_Image'];
$Image_Name=$row['Image_Name'];
$Statut_Image_Report_01=$row['Statut_Image_Report_01'];

echo  "<tr><td>$ID_Image</td><td><input type='checkbox' name='chk_.$ID_Image' id='chk_.$ID_Image' value='1'/></td></tr>";




}


echo "</table><br/><br/>";
echo  '<input type="submit" name="envoie" VALUE="Enregistrer">';
echo  '</form>';

mysql_close();

page qui UPDATE le statut des checkbox dans la BDD
-----------------------------------
Code:
<?php
include_once '../fonctions.php';

connexion_DB('abscence');

$aff = mysql_query("SELECT ID_Image,Image_Name, Statut_Image_Report_01 FROM images")or die(mysql_error());

while($row = mysql_fetch_array($aff)) //BOUCLE---------------------
{
$ID_Image=$row['ID_Image'];
$Image_Name=$row['Image_Name'];
$Statut_Image_Report_01=$row['Statut_Image_Report_01'];


 $value = 'pascoché';
    if (isset($_POST['chk_'.$ID_Image]) && ($_POST['chk_'.$ID_Image] =='1')) 
     {
           $value = 'coché';
     }
     
     $sql = "UPDATE images SET Statut_Image_Report_01='".$value."' WHERE ID_Image=".$row['ID_Image']; 
	 
	 
     mysql_query($sql); 
	 echo "<br/>".$sql;

}




?>


D'avance merci pour votre aide. :D
 
La checkbox de mémoire ne renvoi aucune valeur.
Elle est simplement renseigné si elle est coché, sinon elle ne renvoie rien.

Donc je ferait simplement :
Code:
if (isset($_POST['chk_'.$ID_Image])) {...}
 
Salut,

merci de ta réponse. Je viens d'essayer mais toujours rien il me mets :

Code:
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=1
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=2
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=3
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=4
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=9
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=6
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=7
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=8
UPDATE images SET Statut_Image_Report_01='pascoché' WHERE ID_Image=10

J'ai pourtant coché des checkbox. !!

Une idée ?

John
 
Salut,

Dans la première page j'ai ceci :

Code:
echo  "<tr><td>$ID_Image</td><td><input type='checkbox' name='chk_.$ID_Image' id='chk_.$ID_Image' value='1'/></td></tr>";
 
Essai plutôt ça :

Code:
echo  "<tr><td>$ID_Image</td><td><input type='checkbox' name='chk_".$ID_Image."' id='chk_".$ID_Image."' value='1'/></td></tr>";
 
et ça ?

Code:
 $value = 'pascoché';
    if (!empty($_POST['chk_'.$ID_Image]))
     {
           $value = 'coché';
     }
     
     $sql = "UPDATE images SET Statut_Image_Report_01='".$value."' WHERE ID_Image=".$row['ID_Image'];
   
   
     mysql_query($sql);
    echo "<br/>".$sql;

}
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut