|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
hx.jonathan WRInaute discret

Inscrit le: 02 Mar 2005 Messages: 93
|
Posté le : Dim Déc 09, 2007 14:56 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
Bonjour à tous,
En fait j'ai une checkbox. Quand je la coche j'aimerais que j'enregistre son statut coché dans ma base de données de sorte que l'on retienne ce que l'utilisateur avait coché. J'ai essayé avec un UPDATE mais il ne m'enregistre rien.
Voici comment je récupère la valeur
| Code: |
<?php
connexion_DB('abscence');
if (isset($_POST['normale'])) // la case inscription a été cochée donc affiche la valeur de VALUE de mon formulaire
{
echo $_POST['normale'];
$sql=mysql_query("UPDATE parametres SET statut="$_POST['normale']" WHERE ID_PARAM=1"); // je mets à jour le champ de ma table afin que je retienne qu'il est coché.
}
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
echo "<br/>".$sql;
?>
<FORM method="POST">
<input type="checkbox" name="normale"value="try">Normales<br>
<input type="submit" value="Afficher les résultats"/>
</form> |
Quelle solution existe ?
John |
|
| |
|
 |
medium69 WRInaute accro

Inscrit le: 07 Mai 2005 Messages: 2151 Localisation: Je sais pas trop ;)
|
Posté le : Dim Déc 09, 2007 15:08 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| Ton code doit contenir une erreur ailleurs que sur la récupération de la valeur de la checkbox |
|
| |
|
 |
cleden WRInaute accro

Inscrit le: 06 Jan 2003 Messages: 1181 Localisation: Belgique actuellement mais Bretagne normalement
|
Posté le : Dim Déc 09, 2007 15:09 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
Déjà,
| Code: |
| if (isset($_POST['normale'])) |
Ne va pas vérifier si la case est cochée mais si la variable existe. Or Elle existe dans tous les cas car elle fait partie du formulaire.
Edit: J'ai un doute, quelqu'un peut confirmer ?
Mais ton problème ne vient pas directement de là. Essaies avec:
| Code: |
| statut='".$_POST['normale']."' |
D'autre part, je ne sais plus si les champs sql sont casse dépendants mais ton champ ID_PARAM est-il écrit en majuscule dans ta table ?
Loïc |
|
| |
|
 |
hx.jonathan WRInaute discret

Inscrit le: 02 Mar 2005 Messages: 93
|
Posté le : Dim Déc 09, 2007 17:13 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| Oui c'est écrit en majuscule. |
|
| |
|
 |
SuperCureuil WRInaute passionné

Inscrit le: 09 Mar 2007 Messages: 661 Localisation: Bxl, Belgique
|
Posté le : Dim Déc 09, 2007 19:07 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| Citation: |
| Ne va pas vérifier si la case est cochée mais si la variable existe. Or Elle existe dans tous les cas car elle fait partie du formulaire. |
Exact.
En plus, dans ce cas, même un !empty ne fonctionne pas ...
je suis intéressé par la soluce car je viens de rencontrer le même hic et je n'ai pas trouvé ... |
|
| |
|
 |
cleden WRInaute accro

Inscrit le: 06 Jan 2003 Messages: 1181 Localisation: Belgique actuellement mais Bretagne normalement
|
Posté le : Dim Déc 09, 2007 19:28 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| hx.jonathan a écrit: |
| Oui c'est écrit en majuscule. |
Et que donne ton
? |
|
| |
|
 |
jeroen WRInaute accro

Inscrit le: 30 Aoû 2002 Messages: 2320
|
Posté le : Dim Déc 09, 2007 22:06 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| cleden a écrit: |
Edit: J'ai un doute, quelqu'un peut confirmer ?  |
Non, un checkbox non coché ne renvoie RIEN. |
|
| |
|
 |
SuperCureuil WRInaute passionné

Inscrit le: 09 Mar 2007 Messages: 661 Localisation: Bxl, Belgique
|
Posté le : Dim Déc 09, 2007 22:50 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| Citation: |
| Non, un checkbox non coché ne renvoie RIEN. |
Ah bon ? En théorie, c'est vrai mais pourtant je viens encore de tester et si
L'id du champ existe via le formulaire, donc même non coché le isset sur le champ renvoie true, et si tu testes avec empty, ça ne passe pas non plus mais là je ne comprends pas pourquoi. Je me suis même renseigné sur le comportement des checkbox et en théorie le non coché ne renvoie rien. Enfin je me plante ss doute qq part
ça va faire boulet là mais tu peux donner un exemple de test sur un checkbox ? |
|
| |
|
 |
jeroen WRInaute accro

Inscrit le: 30 Aoû 2002 Messages: 2320
|
Posté le : Dim Déc 09, 2007 23:02 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
| SuperCureuil a écrit: |
| Citation: |
| Non, un checkbox non coché ne renvoie RIEN. |
Ah bon ? En théorie, c'est vrai mais pourtant je viens encore de tester et si  |
Et moi je viens de tester avec firefox et ça ne renvoie rien  |
|
| |
|
 |
SuperCureuil WRInaute passionné

Inscrit le: 09 Mar 2007 Messages: 661 Localisation: Bxl, Belgique
|
Posté le : Dim Déc 09, 2007 23:12 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
D'accord, je ne dis pas que tu as tort, je dis que je l'ai testé tantôt et une heure hier soir sans parvenir à trouver la solution parce que ça passait tout le temps, d'où je pense que je teste mal, d'où je te demande de montrer la manip' que tu fais, tout simplement.
Tu veux bien me la montrer ?
EDIT : je viens de relire le début du post, et en fait ça ne correspond pas à mon problème puisque, effectivement Jeroen, si ce n'est pas coché le champ ne renvoie aucune valeur, mais il existe bel et bien ..., Je me suis mal exprimé  |
|
| |
|
 |
jeroen WRInaute accro

Inscrit le: 30 Aoû 2002 Messages: 2320
|
Posté le : Dim Déc 09, 2007 23:26 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
NON : il n'existe pas, et en GET tu peux t'en rendre compte dans l'url renvoyée
| Code: |
<?php
foreach($_GET as $k => $v) echo $k." : ".$v."<br />";
?>
<form method="get">
<input type="checkbox" name="test" value="1" <?php if (isset($_GET['test'])) echo "checked=\"checked\""; ?>/><input type="submit" value="Afficher" />
</form> |
|
|
| |
|
 |
SuperCureuil WRInaute passionné

Inscrit le: 09 Mar 2007 Messages: 661 Localisation: Bxl, Belgique
|
Posté le : Dim Déc 09, 2007 23:52 Sujet du message: UPDATE champ checkbox coché ou non |
|
|
Bon ben je m'incline, ça fonctionne alors que je me suis arraché les cheveux hier parce que cette p... de variable existait toujours TGrâce à toi je viens de comprendre pourquoi : après ce test je créais une variable de session contenant la valeur en question. En aval, je testais l'existence de la variable de session. Comme je ne la détruisais pas, ben elle existait toujours et j'ai confondu ce checkbox avec la variable de session. CQFD
Donc une checkbox vide ne renvoie bel et bien RIEN
merci et @+ |
|
| |
|
 |
| |
|
|