Bonjour à tous,
Je vous écris puisque j'ai un soucis avec lequel je me bat depuis maintenant 2 jours, je ne m'en sort pas...
Je souhaite insérer dans ma base un événement suite à la saisie d'informations dans un formulaire. Cet événement sera inséré dans la table "evenement".
Voici le formulaire :
Dans un premier temps, il faut renseigner le nom d'une tournée. Ces noms sont présents dans la table "tournee". Au lieu de récupérer le nom de cette tournée (ce qui est affiché), je récupère l'id de celle-ci.
il faut ensuite renseigner la ville, l'adresse, le lien, et la description.
Lors de la création de ma base de données, j'ai décidé de créer plusieurs tables avec des relations. Par exemple, la clé primaire de la table "tournee" est "id_tournee". Cet "id_tournee" est aussi présent dans la table "evenement" afin de définir automatiquement la tournée à laquelle appartient tel ou tel événement.
Mon code ne fonctionnant pas, j'ai alors décidé de tester ma requête directement dans phpmyadmin et voici le résultat :
Le soucis est donc celui de cette erreur car je pense que mon code est correct :
Code php : 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 <form class="formajoutevent" action="" method="post" enctype="multipart/form-data"> <select name="tournee" required> <?php try { $bdd = new PDO('mysql:host=localhost;dbname=medrano2017;charset=utf8', 'root', ''); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } $reponse = $bdd->query('SELECT * FROM tournee'); while ($donnees = $reponse->fetch()) { ?> <option value="<?php echo $donnees['id_tournee'];?>"><?php echo $donnees['nom_tournee'];?></option> <?php } $reponse->closeCursor(); ?> </select> <!--<input type="file" name="affiche" />--> <input type="text" name="ville" placeholder="Ville de l'événement" required> <input type="text" name="adresse" placeholder="Adresse de l'événement" required> <input type="text" name="lienresa" placeholder="Lien de réservation" required> <textarea type="text" name="description" placeholder="Plus d'informations..." required></textarea> <input class="ajoutertournee" type="submit" value="Ajouter"> </form> <?php //var_dump( $_POST['tournee'] ); //var_dump( $_POST['adresse'] ); //var_dump( $_POST['adresse'] ); //var_dump( $_POST['lienresa'] ); //var_dump( $_POST['description'] ); if(isset($_POST['ville']) && isset($_POST['adresse']) && isset($_POST['lienresa']) && isset($_POST['description'])) { try { $bdd = new PDO('mysql:host=localhost;dbname=medrano2017;charset=utf8', 'root', ''); } catch(Exception $e) { die('Erreur : '.$e->getMessage()); } $reponse = $bdd->query('INSERT INTO evenement (id_tournee, ville_event, adresse_event, lien_resa_event, description_event) VALUES ("'.$_POST['tournee'].'","'.$_POST['ville'].'","'.$_POST['adresse'].'","'.$_POST['lienresa'].'","'.$_POST['description'].'")'); //header('Location: ../index.php'); } else { echo 'erreur'; } ?>
Voici les structures de mes tables, ainsi que le schéma relationnel :
Table "evenement" :
Table "tournee" :
Schéma relationnel :
Merci d'avance à tout le monde !
Partager