Bonsoir,
Je voudrais bien un petit coup de main (faute principalement de temps) pour réaliser ce script svp merci.
Il était une fois une liste de cases à cocher, certaines actives et d'autres disabled dans un form...
A l'heure actuelle : ca fonctionne mais je n'historise rien, car je vide ma table à chaque ajout/à chaque exécution de la page, mais le cahier des charges à changer erf
if ($_POST["cac"]) {
$q = "DELETE FROM links WHERE adh_lin = ".$_SESSION["id"]." AND flag_lin = 0";
$r = mysql_query($q);
foreach($_POST["cac"] as $index => $valeur) {
$q2 = "INSERT INTO links (id_lin,adh_lin,tour_lin,cap_lin,flag_lin) values ('',".$_SESSION["id"].",".$valeur.",'',0)";
$r2 = mysql_query($q2);
}
}else{
$q3 = "DELETE FROM links WHERE adh_lin = ".$_SESSION["id"]." AND flag_lin = 0";
$r3 = mysql_query($q3);
}
J'ai exploré la piste replace, en vain...et essayé de faire un select mais dans la boucle du foreach ma variable de référence se perd et prend une valeur null(e)
Pour se faire, j'ai été obligé de fabriquer une case à cocher en hidden pour que les cases disabled soient prises en compte car une case disabled dans un foreach ca ne vaut rien, le $index => $valeur ne se fait pas. Ca permet de poster toutes les lignes, tous les id...
Comme je panique un poil, j'en appelle à l'esprit logique très développé de certains
Ci-dessous la nouvelle gymnastique :
Une case à cocher disabled cochée doit rester cochée en base.
Une case à cocher disabled non cochée ne doit pas apparaître en base.
Une case à cocher active non cochée ne doit pas
ou plus apparaître en base.
Une case à cocher active cochée doit apparaître ou
être consolidée en base.
Merci de m'avoir lu et pour l'éventuel coup de pouce !
Mega
