Insérer la valeur de la case si cochée = 1 et non coché = 0

barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   -  
barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai réussi à faire une requête d'insertion dans une table mysql et les données de type texte s'enregistre bien mais je souhaite savoir comment faire pour insérer la valeur de la case à cocher si cochée = 1 et non cochée = 0.

<input name="news_etat" type="checkbox" id="etat" checked="checked" />

J'ai trouvé la possibilité derécupérer une valeur de type texte mais pas trop pour le true et false ?

Merci de votre aide.

A voir également:

9 réponses

armasousou Messages postés 1268 Date d'inscription   Statut Membre Dernière intervention   83
 
Tu fais un <input type="checkbox" name="check"/>

Et dans ton traitement, t'aura un $_POST['check'] = a 1 si coché, sinon 0
0
barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   110
 
Merci pour la réponse aussi rapide.
0
barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   110
 
j'ai fait:

echo $_POST['news_etat']; et il me renvoi "on" et dans ma table il écrit: 0

mysql_query("INSERT INTO $table (etat)VALUES('$news_etat')");
0
xander
 
fait voir ton code
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   110
 
<input name="news_etat" type="checkbox" id="news_etat" checked="checked" />




require_once('../../Connections/ma_connexion.php');
if (isset($_POST['envoi']))
{
$erreur="";
if (isset($_POST['news_titre']) AND isset($_POST['news_texte']) AND isset($_POST['news_lien']))
{
if ($_POST['news_titre'] != NULL AND $_POST['news_texte'] != NULL)
{
mysql_select_db("$database_ma_connexion") or die('Connexion impossible');
mysql_pconnect($hostname_ma_connexion, $username_ma_connexion, $password_ma_connexion) or trigger_error(mysql_error(),E_USER_ERROR);
$news_titre = htmlentities($_POST['news_titre']);
$nom = htmlentities($_FILES['MON_FICHIER_A_ENVOYER']['name']);
$news_texte = htmlentities($_POST['news_texte']);
$news_lien = htmlentities($_POST['news_lien']);
mysql_query("INSERT INTO $table_news (news_titre,news_image,news_texte,news_lien,news_etat)VALUES('$news_titre','$pasdefichier','$news_texte','$news_lien','$news_etat')");
mysql_close();
}
}
}
0
xander18 Messages postés 68 Date d'inscription   Statut Membre Dernière intervention   2
 
tu insère new_etat mais tu lui attribue aucune valeur.

essaye avec sa :
if(isset($_POST['news_etat']))
{
$news_etat = 1; // si promo est coché
}else{
$news_etat= 0; // si promo est décoché
}
et dans ta BDD met bien que news_etat est un boolean c'est mieux
0
armasousou Messages postés 1268 Date d'inscription   Statut Membre Dernière intervention   83
 
new etat sera forcément "set" puisqu'il sera soit a 1 soit a 0 ^^
0
ThEBiShOp Messages postés 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
$news_etat = (isset($_POST['news_etat']) && $_POST['news_etat'] == 'on') ? 1 : 0;
0
barale61 Messages postés 1214 Date d'inscription   Statut Membre Dernière intervention   110
 
Merci ça marche !
0