Bonjour,
j'ai pas mal cherché sur le forum sans trouvé de solution à mon problème alors je viens demander de l'aide,
désolé par avance si le titre n'est pas explicite mais je ne savais pas trop comment le définir...
J'ai une page php qui affiche une liste de produits tirée d'une base SQL.
Je peux modifier des options sur chaque ligne puis valider les modifications faites sur la page avec un bouton $_POST.
Je traite le tout avec une page de traitement (code ci-dessous) mais je rencontre un souci avec des checkbox,
il s'agit de $_POST['Creserved'], je souhaite modifier la valeur avant écriture dans la BDD mais si j'ai une liste de 3 produits
<td>PROD1</td><td>checkbox</td>
<td>PROD2</td><td>checkbox</td>
<td>PROD3</td><td>checkbox</td> (je coche cette checkbox)
et que je coche seulement le dernier de la liste, après traitement celui qui est coché est le premier de la liste.
résultat :
<td>PROD1</td><td>checkbox</td> (checkbox cochée)
<td>PROD2</td><td>checkbox</td>
<td>PROD3</td><td>checkbox</td> (checkbox non cochée)
J'ai ce problème seulement avec la partie du code qui traite les checkbox :
Je ne parviens pas à résoudre ce problème... Mes connaissances en php ne sont pas hyper développées,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if (isset(Creserved[$key])) $Creserved_format[$key] = '1'; else $Creserved_format[$key] = '0';
j'apprends tout seul. Merci d'avance de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 <?php require_once('_connexion.php'); /*Récupérer les données */ $CKey = $_POST['CKey']; $Cid = $_POST['Cid']; $Clanguage = $_POST['Clanguage']; $Cetat = $_POST['Cetat']; $Ccote = $_POST['Ccote']; $Ccommentaire = $_POST['Ccommentaire']; $Creserved = $_POST['Creserved']; foreach ($CKey as $key => $value) { if (isset(Creserved[$key])) $Creserved_format[$key] = '1'; else $Creserved_format[$key] = '0'; /* requete de MAJ */ $query_collec_modif = ("UPDATE collection SET Clanguage = '$Clanguage[$key]', Cetat = '$Cetat[$key]', Ccote = $Ccote[$key], Ccommentaire = '$Ccommentaire[$key]', Ctab = '1', Creserved = '$Creserved_format[$key]' WHERE CKey=$CKey[$key];"); $result = mysql_query($query_collec_modif) or die('Erreur SQL !<br>'.$query_collec_modif.'<br>'.mysql_error()); echo $query_collec_modif.'<br/>'; } header('Location: collection_modif.php'); ?>
Partager