Cases a cocher

Bonjour,

J’ai un petit soucis avec le rechargement d’un formulaire.
Je m’explique.

Lorsqu’un personne saisi dans le formulaire ces renseignements il y a des cases a cocher. Si la case et cocher ça m’insert un “1” dans ma table.
Par contre, la personne a possibilité de modifier ce formulaire, et ce que je n’arrive pas a faire c’est a refaire apparaitre les cases précedement cochés. ex si elle veut dévalider la case coché, il pourra le faire.

Je vous donne ce que j’ai fait comme bout de code.

Code :

include(“hydrus.php5”);
$requete_txt = “SELECT * FROM corolle_fiches_pdt WHERE ref = '”.$_GET[‘ref’]."’";
$result = $bdd->result_to_array($bdd->query($requete_txt));
$coche = $result[0][6];
echo $coche;
for($i=0;$i<count($coche);$i )
{
if($coche =1)

{
print("");
$requete_txt = “UPDATE corolle_fiches_pdt SET cdc = ‘2’ WHERE ref = '”.$_GET[‘ref’]."’";
$bdd->query($requete_txt); }
else
{
print("");
$requete_txt = “UPDATE corolle_fiches_pdt SET cdc = ‘3’ WHERE ref = '”.$_GET[‘ref’]."’";
$bdd->query($requete_txt);
}
}

Merci a tous
Cordialement,

Saluton,
Qu’est censé contenir $coche, un array ?
Je ne comprends rien à ce bout de code

$coche = $result[0][6];
echo $coche;
for($i=0;$i<count($coche);$i )
{
if($coche =1)

Je ne suis pas un expert en php, surtout avec le boucles !
Si tu avais un bout de code qui me permettrait d’avancer ca serai sympas !!

$requete_txt = “SELECT * FROM corolle_fiches_pdt WHERE ref = '”.$_GET[‘ref’]."’";
$result = $bdd->result_to_array($bdd->query($requete_txt));
$coche = $result[0][6];

–> exécution de la requête
–>mise en variable du résultat

Ensuite ce que je veux c’est activer la case a cocher si la valeur est 1 ou la décocher si elle est egale a 0

Sinon j’ai ca qui fonctionne !!

$requete_txt = “SELECT * FROM corolle_fiches_pdt WHERE ref = '”.$_GET[‘ref’]."’";
$result = $bdd->result_to_array($bdd->query($requete_txt));
$coche = $result[0][6];
echo $coche;
if($coche==1)
{
print("");
}
else
{
print("");
}

Mais le problème c’est que si le résultat est égale a 1 la case va bien etre cochée mais le problème c’est que si je décide de la décocher bah il ne se passe rien !!
Je sais bien qu’il faut fait un UPDATE de la base mais comment faire??

Merci de votre aide.

C’est deux chose séparé :

  • Affichage des checkbox en fonction des données présent dans ta base de données
  • Mise à jour de la base de donnée avec les informations validées dans le formulaire ( les cases coché )
  • Affichage
    Tu parcours tout les resultats de ta requette, et comme tu la montré plus haut, quand le champ qui correspond à une case coché est à 1 tu ajoutes le checked.

  • Mise à jour
    Tu nomme les inputs de chaque checkbox de façon à les différencier lors de la mise à jour de la base de données.
    Tu crées une requete ou un boucle qui pour chaque checkbox va faire un UPDATE de la ligne correspondante dans la base de donne. ( Moyen de le faire en 1 ou 2 requettes, mais le plus simple c’est 1 requete par checkbox :stuck_out_tongue: )

Outre l’utilisation d’ajax, tu es obligé de mettre un bouton “mis à jour” qui renvoi par exemple vers une fonction “update” qui remet à jour les champs de la table (la même que ta fonction qui insert toutes les données, sauf que là il fait un update)