cases à cocher

Petit nouveau ! | 2 Messages

24 août 2005, 17:48

bonjour à tous,


j'ai un petit problème, je suis en train de créer un formulaire qui contient une vingtaine de question. Mon problème est que lorsque j'ai des questions à choix multiples avec des cases à cocher il me retourne un message d'erreur lors de la validation du formulaire si une des cases n'est pas coché, merci de votre aide

voici le code

<?

<?php

$R0101			= stripslashes($_POST['Q0101'])		;
$R0201			= stripslashes($_POST['Q0201'])		;
$R0301			= stripslashes($_POST['Q0301'])		;
$R0401			= stripslashes($_POST['Q0401'])		;
$R0402			= stripslashes($_POST['Q0402'])		;
$R0403			= stripslashes($_POST['Q0403'])		;
$R0404			= stripslashes($_POST['Q0404'])		;
$R0405			= stripslashes($_POST['Q0405'])		;
$R0501			= stripslashes($_POST['Q0501'])		;
$R0502			= stripslashes($_POST['Q0502'])		;
$R0503			= stripslashes($_POST['Q0503'])		;
$R0601			= stripslashes($_POST['Q0601'])		;
$R0701			= stripslashes($_POST['Q0701'])		;
$R0801			= stripslashes($_POST['Q0801'])		;
$R0901			= stripslashes($_POST['Q0901'])		;
$R1001			= stripslashes($_POST['Q1001'])		;
$R1002			= stripslashes($_POST['Q1002'])		;
$R1003			= stripslashes($_POST['Q1003'])		;
$R1101			= stripslashes($_POST['Q1101'])		;
$R1102			= stripslashes($_POST['Q1102'])		;
$R1103			= stripslashes($_POST['Q1103'])		;
$R1104			= stripslashes($_POST['Q1104'])		;
$R1105			= stripslashes($_POST['Q1105'])		;
$R1201			= stripslashes($_POST['Q1201'])		;
$R1301			= stripslashes($_POST['Q1301'])		;
$R1401			= stripslashes($_POST['Q1401'])		;
$R1501			= stripslashes($_POST['Q1501'])		;
$R1601			= stripslashes($_POST['Q1601'])		;
$R1701			= stripslashes($_POST['Q1701'])		;
$R1702			= stripslashes($_POST['Q1702'])		;
$R1703			= stripslashes($_POST['Q1703'])		;
$R1704			= stripslashes($_POST['Q1704'])		;
$R1705			= stripslashes($_POST['Q1705'])		;
$R1706			= stripslashes($_POST['Q1706'])		;


mysql_connect	("localhost","root","");
mysql_select_db	("results");

mysql_query		("INSERT INTO result(R0101, R0201, R0301, R0401, R0402, R0403, R0404, R0405, R0501, R0502, R0503, R0601, R0701, R0801, R0901, R1001, R1002, R1003, R1101, R1102, R1103, R1104, R1105, R1201, R1301, R1401, R1501, R1601, R1701, R1702, R1703, R1704, R1705, R1706) 
values ('$R0101', '$R0201', '$R0301', '$R0401', '$R0402', '$R0403', '$R0404', '$R0405', '$R0501', '$R0502', '$R0503', '$R0601', '$R0701', '$R0801', '$R0901', '$R1001', '$R1002', '$R1003', '$R1101', '$R1102', '$R1103', '$R1104', '$R1105', '$R1201', '$R1301', '$R1401', '$R1501', '$R1601', '$R1701', '$R1702', '$R1703', '$R1704', '$R1705', '$R1706')");


mysql_close		();

?>

?>
<html><a id=lien href='javascript:history.go(-3)' tabindex="15">Retour</a></html>





et ici le code html de la question avec les cases à cocher :

Code : Tout sélectionner

<!-- **//**//**//**//**//**//**//**//** !--> <table border="0" style="border-collapse: collapse" width="750" bordercolorlight="#000000" bordercolordark="#000000"> <tr><td colspan="7"> </td> <tr><td valign="top" bgcolor="#98B49A" height="125"> </td> <td valign="top" bgcolor="#98B49A" height="125" width="150">Question N°4 : <td height="125" bgcolor="#98B49A"> </td> <td height="125"> </td> <td height="125" bgcolor="#98B49A"> </td> <td bgcolor="#98B49A" width="610" valign="top"><p align="justify"> <b>Dans quelles circonstances pourriez-vous faire des rencontres ?<br> <br> [puce]<input type="checkbox" name="Q0401" value="Fêtes entre amis" style="font-weight: 700">Fêtes entre amis<br> [puce]<input type="checkbox" name="Q0402" value="Sites de rencontres (speed dating, ...)" style="font-weight: 700">Sites de rencontres (speed dating, ...)<br> [puce]<input type="checkbox" name="Q0403" value="Boîtes club" style="font-weight: 700">Boîtes, club, ...<br> [puce]<input type="checkbox" name="Q0404" value="Travail passions" style="font-weight: 700">Travail, passions<br> [puce]Autres :<input name="Q0405" size="30" style="font-weight: 700"> <td height="125" bgcolor="#98B49A"> </td> <tr><td colspan="7"> </td> <tr><td bgcolor="#000000" colspan="7"> </td> </table> <!-- **//**//**//**//**//**//**//**//** !-->

merci par avance de votre aide

Mammouth du PHP | 19672 Messages

24 août 2005, 18:12

D'abord, tu semble récupérer plus de valeurs que n'en envoie le formulaire.

Ensuite si une case n'est pas cochée, elle n'est pas envoye, il faut donc initialiser tes variables différemment lors de la récupération, exemple:
$R0101            = isset($_POST['Q0101']) ? stripslashes($_POST['Q0101']) : "";
Comme ça, soit tu auras une valeur, soit une chaine vide.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 3 Messages

25 août 2005, 10:11

Merci, j'avais le même problème et grace à toi maintenant ca marche nickel =D>

Eléphant du PHP | 75 Messages

25 août 2005, 10:12

oui effectivment ... essaie de mettre des nom de variables plus explicites a la question pour etre sur de ne pas faire une faute...
http://cyrill.skyblog.com ===> mon blog

Petit projet en php fais de moi meme :-)

http://sites.neeweb.com/cyrill/

Petit nouveau ! | 2 Messages

25 août 2005, 10:12

Salut cyrano

ta soluce marche nickel !!!!

merci à toi et longue vie au forum !!

bye et a bientot