Bonjour,

J'ai construit une page sur laquelle il y a un formulaire d'inscription avec de la documentation que l'on peut demander en cliquant des checkbox. Pour mettre à jour cette documentation qui peut être amenée à évoluer, j'ai créé un système de mise à jour qui permet di'nsérer de nouvelles docs, d'en supprimer, de cliquer celles qui s'afficheront sur le formulaire ou pas... Ce que je n'arrive pas à faire est la récupération des checkbox cliqués sur le formulaire. J'ai une table documentation dans laquelle je décompose mes checkbox, le code de chaque documentation se trouve dans ce champ : code_publication_doc, une ligne est créée pour chaque documentation insérée, je récupère aussi le stock, la doc demandée par quel utilisateur, la date...).

Voici ma table avec un exemple d'insertion :
Code sql : 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
 
CREATE TABLE `documentation` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `code_publication_doc` varchar(50) NOT NULL,
  `description` varchar(100) NOT NULL,
  `image` varchar(300) NOT NULL,
  `version_numerique` varchar(300) NOT NULL,
  `categorie_publication` int(11) NOT NULL,
  `division` varchar(50) CHARACTER SET latin1 COLLATE latin1_spanish_ci NOT NULL,
  `qte_stock` int(11) NOT NULL,
  `qte_demande` int(11) NOT NULL,
  `date_maj` date NOT NULL,
  `formulaire_affich` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
 
INSERT INTO `documentation` (`id`, `code_publication_doc`, `description`, `image`, `version_numerique`, `categorie_publication`, `division`, `qte_stock`, `qte_demande`, `date_maj`, `formulaire_affich`) VALUES
(4,	'20fds329-FP',	'synthese',	'synthese.jpg',	'affiche.php?ref=2027',	2,	'3',	17,	11,	'2021-07-26',	0),

Voilà et mon souci se situe à ce niveau là, je ne sais pas comment écrire le code pour bien récupérer de façon individuelle dans chaque champ mes checkbox cliqués :

Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
<img style="text-decoration:none;"  class="bordure" src="../images/<?php echo $rang['image']; ?>" alt="../images/<?php echo $rang['description']; ?>" width="110" height="144"/></a> 
					<br /><br />
					<input type="checkbox" name="chk1[]" value="<?php echo $rang['code_publication_doc']; ?>"<?php if(isset($_POST['chk1']) AND in_array($rang['code_publication_doc'], $_POST['chk1'])) {echo 'checked="checked"';} ?> id="<?php echo $rang['code_publication_doc']; ?>">	<?php echo $rang['description']; ?>

Et voici mon code complet :

Code php : 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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
 
<?php
 
if(isset($_POST['upload']))
{
 
require "connection.php";
 
		mysql_query("SET NAMES UTF8");
		$nom = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["nom"])));
		$prenom = mysql_real_escape_string(htmlspecialchars(stripcslashes($_POST["prenom"])));
 
		$result="INSERT INTO pros (nom,prenom) VALUES ('".$nom."','".$prenom."')";
        $req= mysql_query($result) or die ('Erreur sql !<br />'.$result.'<br />'.mysql_error());
 
    	$nId_pros = mysql_insert_id();
 
    $res = mysql_num_rows($req);
 
	if($res!=0)  
        {
			echo "-";
        }
    else  
	{
			$checkbox1 = $_POST['chk1'];
 
			for ($i=0; $i<sizeof($checkbox1);$i++) 
			{
				$cSql2 = "INSERT INTO demande_publications VALUES ('','".$checkbox1[$i]."','" . $nId_pros  . "', NOW())";
				mysql_query($cSql2) or die(mysql_error());
 
				$cSql5 = "UPDATE documentation SET qte_demande=qte_demande+1 WHERE code_publication_doc='".$checkbox1[$i]."'";
				mysql_query($cSql5) or die(mysql_error());
			}
	}
}
 
	mysql_close();						 
?>
 
 
 
 
<form action="inscription.php" method="post" width="650">
 
<fieldset>  
<legend >Compte :</legend>		 
 
		  <input name="nom" title="nom" value="<?php if (isset($_POST['nom'])) echo htmlentities(trim($_POST['nom'])); ?>" size="70" type="text" tabindex="4" onFocus="this.select()"/>
 
 
			<?php
			$sql ="SELECT documentation.id, documentation.code_publication_doc, documentation.description, documentation.image, documentation.categorie_publication, documentation.division, documentation.qte_stock, documentation.qte_demande, documentation.formulaire_affich, documentation.date_maj, categories_publications.categorie AS categorie_publication, divisions.division_titre AS division 
			FROM documentation 
			LEFT JOIN categories_publications ON documentation.categorie_publication = categories_publications.id 
			LEFT JOIN divisions ON documentation.division = divisions.id
			WHERE categories_publications.id = 1 and documentation.formulaire_affich='oui'";
 
			$resultat = mysql_query($sql,$conn)  or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
			while ($rang= mysql_fetch_array ($resultat)){ 
			?> 		
 
					<img style="text-decoration:none;"  class="bordure" src="../images/<?php echo $rang['image']; ?>" alt="../images/<?php echo $rang['description']; ?>" width="110" height="144"/></a> 
					<br /><br />
					<input type="checkbox" name="chk1[]" value="<?php echo $rang['code_publication_doc']; ?>"<?php if(isset($_POST['chk1']) AND in_array($rang['code_publication_doc'], $_POST['chk1'])) {echo 'checked="checked"';} ?> id="<?php echo $rang['code_publication_doc']; ?>">	<?php echo $rang['description']; ?>	
			<?php 
				}
			?>  	   
 
		  <input class="butn" style="cursor:pointer" title="Submit" name="upload" type="submit" id="submit" value="Submit" /> &nbsp;&nbsp;
		  <input type="reset" value="Delete" title="Delete" tabindex="14"  class="butn" style="cursor:pointer"/>	
</fieldset>	   
</form>

Merci beaucoup pour votre aide