IMPORTANT Pb pour enregistrer form en PHP

Résolu/Fermé
bip - 7 juin 2009 à 17:22
 bip - 7 juin 2009 à 19:18
Bonjour,
Bonjour,
je voudrais enregistrer plusieurs checkbox coché dans ma bdd
jessaye depuis longtemps mais je n'y arrive pas aidez moi plzzz

HTML

<td><strong>Travaux souhaités</strong></td>
<td><input type="checkbox" value="options" name="options" /> A <br />
<input type="checkbox" value="options" name="options" /> B <br />
<input type="checkbox" value="options" name="options" /> C <br />
<input type="checkbox" value="options" name="options" /> D <br />
<input type="checkbox" value="options" name="options" /> E</td>

PHP

if (isset($_POST['options']))
{
$net = "1";

// on écrit la requête sql
$sql2 = "INSERT INTO DEVIS(nomclient, numcli, numtravaux) VALUES('$nom', '$mysql_id', '$net')";
}

Je n'arrive pas a dire a la requete la distinction des checkbox
aidez moi plzzz
merci
A voir également:

6 réponses

Utilisateur anonyme
7 juin 2009 à 17:25
Bonjour,
Il faut que tu changes tes valeurs dans les balises :
<td><input type="checkbox" value="A" name="options" /> A <br />
<input type="checkbox" value="B" name="options" /> B <br />
<input type="checkbox" value="C" name="options" /> C <br />
<input type="checkbox" value="D" name="options" /> D <br />
<input type="checkbox" value="E" name="options" /> E</td> 
0
ok merci Adenora
et après je fis comment a partir de là ?

if (isset($_POST['options']))
{
0
Utilisateur anonyme
7 juin 2009 à 17:37
Je sais pas trop ce que tu veux faire, mais si tu veux récupérer la valeur qu'il y a dans $_POST['options'], tu peux faire :
$valeur=$_POST['options'];

Tu auras donc dans $valeur, soit A, soit B, soit C, soit D, soit E selon le choix de l'utilisateur dans le formulaire.
0
j'ai fais ca

if (isset($_POST['options']))
{
$ids = implode(', ', $_POST['options']) ;
// on écrit la requête sql
$sql2 = "INSERT INTO DEVIS(nomclient, numcli, numtravaux) VALUES('$nom', '$mysql_id', '$ids')";
}

car le user peut coché plusieurs cases donc je dois enregistrer toutes les cases
0
et ma technique ne fonctionne pas
ya écri
Warning: implode() [function.implode]: Invalid arguments passed in devis.php on line 38
et ligne 38 cé le implode
0
Utilisateur anonyme
7 juin 2009 à 17:46
Je suis partie dans les boutons et pas dans les checkbox. Désolée.
Il y a quelque chose qui ressemble à ton code (au moins pour l'implode) : http://actuel.fr.selfhtml.org/articles/phpasp/boitacocher/index.htm
0
jviens de voir le site c'est ce que j'ai fait (enfin jpense)
le pb maintenant c'est que ca n'enregistre seulement la dernière case coché et pas tte les case


<td><strong>Travaux souhaités</strong></td>
<td><input type="checkbox" value="1" name="options" /> A<br />
<input type="checkbox" value="2" name="options" /> B <br />
<input type="checkbox" value="3" name="options" /> C <br />
<input type="checkbox" value="4" name="options" /> D <br />
<input type="checkbox" value="5" name="options" /> F </td>


if (isset($_POST['options']))
{
$ids = implode(', ', $_POST['options']) ;
// on écrit la requête sql
$sql2 = "INSERT INTO DEVIS(nomclient, numcli, numtravaux) VALUES('$nom', '$mysql_id', '$ids')";
}
// on insère les informations du formulaire dans la table
mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());

//j'ai fait un echo pour voir l'enregistrement ca n'affiche ke la dernière coché
echo '<p>options:<br><br>'.$options.'</p>';

:(
0

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

Posez votre question
Utilisateur anonyme
7 juin 2009 à 18:18
Si on reprend l'exemple du site :
<input type="checkbox" value="1" name="options[]" /> A<br />
<input type="checkbox" value="2" name="options[]" /> B <br />
<input type="checkbox" value="3" name="options[]" /> C <br />
<input type="checkbox" value="4" name="options[]" /> D <br />
<input type="checkbox" value="5" name="options[]" /> F </td>
0
a oui sayai sa fonctionne
merci Adenora ! ;)
0