Bonjour,
Quand je fait un print_r($_POST) de mon formulaire, les valeurs des casses à cocher, qui sont justement non cochées sont égale à ''.
Comment faire pour remplacer '' par 0 pour une clé donnée ?
Merci
Version imprimable
Bonjour,
Quand je fait un print_r($_POST) de mon formulaire, les valeurs des casses à cocher, qui sont justement non cochées sont égale à ''.
Comment faire pour remplacer '' par 0 pour une clé donnée ?
Merci
Une checkbox non cochée ne renvoit pas une chaine vide, elle ne renvoit rien.
Donc :
Code:
1
2
3 if(!isset($_POST['tacheckbox'])) { $valeur = 0; }
En effet et c'est bien ce que j'ai fait, mais maintenant je veux remplacer "rien" par 0 dans le array de $_POST car ensuite je serialise ce array et l'enregistre en db.
On est pas censé modifier le tableau POST, on est censé récupérer des choses dedans pour alimenter des traitements. (ça évite d'enregistrer les trucs qu'un utilisateur mal intentionné peut avoir ajouté au formulaire)
Donc :
ou en écriture ternaire (c'est exactement le même code, mais écrit différemment) :Code:
1
2
3
4
5
6 $tableau_a_enregistrer = array(); if (isset($_POST['ma_checkbox'])) { $tableau_a_enregistrer['ma_checkbox'] = $_POST['ma_checkbox']); } else { $tableau_a_enregistrer['ma_checkbox'] = 0; }
Code:
1
2 $tableau_a_enregistrer = array(); $tableau_a_enregistrer['ma_checkbox'] = (isset($_POST['ma_checkbox'])) ? $_POST['ma_checkbox'] : 0;