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
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $tableau_a_enregistrer = array(); $tableau_a_enregistrer['ma_checkbox'] = (isset($_POST['ma_checkbox'])) ? $_POST['ma_checkbox'] : 0;
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager