Bonjour,
Je rencontre un petit soucis avec mon code, en effet, celui-ci fonctionne lorsque la case à cocher est vide et que je la coche mais pas dans l'autre sens, à savoir, quand la case est cochée et que je la décoche, d'après la ligne de test que j'ai mis, la variable $_POST ne contient pas l'information qui me permet de déterminer que c'est décoché.
Voici mon code :
Il y a peut-être des choses à améliorer et à simplifier...
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 <?php if( isset($_POST['activation']) && !empty($_POST['activation']) ) { foreach( $_POST as $key => $value ) { echo 'Key : '.$key.' - Value : '.$value.'<br/>'; if( $key != 'activation' ) { $actif = 'N'; if( $value == 'N' ) { $actif = 'O'; } else { $actif = 'N'; } $sql = "UPDATE accueil SET a_actif='".$actif."' WHERE a_id=".$key; mysql_query($sql); } } } $sql = 'SELECT * FROM accueil ORDER BY a_debut'; $req = mysql_query($sql); $compteur = mysql_fetch_row($req); if( $compteur[0] > 0 ) { $req = mysql_query($sql); while($data = mysql_fetch_assoc($req)) { if( $data['a_actif'] == 'O' ) { echo '<form name="activation" method="post" action="">'; echo '<input type="hidden" name="activation" value="ok"/>'; echo '<input type="checkbox" name="'.$data['a_id'].'" value="O" checked="checked" onclick="javascript:this.form.submit();"/>'.$data['a_fichier'].'<br/>'; echo '</form>'; } else { echo '<form name="activation" method="post" action="">'; echo '<input type="hidden" name="activation" value="ok"/>'; echo '<input type="checkbox" name="'.$data['a_id'].'" value="N" onclick="javascript:this.form.submit();"/>'.$data['a_fichier'].'<br/>'; echo '</form>'; } } } else { echo "Il n'y a aucune publicité actuellement !"; } ?>
Merci pour votre aide,
Mathieu
Partager