Bonjour,
j'ai réussi à faire fonctionner une petite base de donnée en PHP qui se rempli au moyen d'un formulaire. Mon formulaire fonctionne parfaitement lorsque j'utilise des input de type "text", mais j'aurai besoin de mettre en plus, à présent, des input de type "checkbox" et c'est là que le problème se manifeste. Si je ne coche pas les cases alors rien ne s'ajoute dans ma base de donnée. Par contre si je coche toutes les cases alors ça fonctionne (et ça ajoute bien le mot "oui" comme je le souhaite dans ma base de donnée). Si quelqu'un pouvait me corriger mon script ce serait vraiment bien car je commence à désespérer, voici le code source de mes 2 pages :
La première page intitulée "index" :
La seconde page intitulée "formulaire-suite" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <html> <head> <title>Ma page</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <style type="text/css"> form { text-align:center; } </style> <body> <form action="formulaire-suite.php" method="post"> <p> Nom Prénom : <input type="text" name="Nom" /><br /> Cochez la ou les villes visitées : Paris : <input type="checkbox" name="Paris" value="oui"><br /> Lyon : <input type="checkbox" name="Lyon" value="oui"><br /> <input type="submit" value="Envoyer" /> </p> </form> </body> </html>
Merci par avance, cordialement, Franck
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 <?php // Connexion à la base de données try { $bdd = new PDO('mysql:host=localhost;dbname=voyage', 'root', ''); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } // Insertion du message à l'aide d'une requête préparée $req = $bdd->prepare('INSERT INTO fichier_clients (Nom, Paris, Lyon) VALUES(?, ?, ?)'); $req->execute(array($_POST['Nom'], $_POST['Paris'], $_POST['Lyon'])); // Redirection du visiteur vers la page d'accueil header('Location: index.php'); ?>
Partager