Bonjour,
Je rencontre un problème qui dure depuis un moment : je n'arrive pas depuis un formulaire à insérer des données dans ma base de donnée PHPMYADMIN.
À chaque fois que je valide mon formulaire, il m'affiche le message suivant : Une erreur est survenue.
Au lieu de m'afficher : "Article ajouté avec le numéro $Id".
Rien ne s'ajoute en base de données.
Est-ce que quelqu'un pourrait m'aider ?
Merci d'avance
Voici mon code :
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
65
66
67
68 <?php var_dump($_POST); //On traite le formulaire if(!empty($_POST)){ //Post n'est pas vide, on vérifie que toutes les données sont présentes if( isset($_POST["TYPE"]) AND isset($_POST["NOM"]) && !empty($_POST["TYPE"]) && !empty($_POST["NOM"]) ){ //Le Formulaire est complet //On récupere les données en les protéfeant (faille XSS) //On retire toute balise du titre $TYPE =strip_tags($_POST["TYPE"]); // on neutralise toute balise du NOM $NOM = htmlspecialchars($_POST["NOM"]); //On peut les enregistrer $bdd = new PDO('mysql:host=localhost;dbname=bdd;charset=utf8', 'root', ''); //On écrit la Requete $sql = "INSERT INTO 'item' ('TYPE','NOM') VALUES (:TYPE, :NOM)"; // on prepare la requete $query = $bdd->prepare($sql); //On injecte les valeurs $query->bindvalue(":TYPE", $TYPE, PDO::PARAM_STR); $query->bindvalue(":NOM", $NOM, PDO::PARAM_STR); //on execture la requete $query->execute()){ die("Une erreur est survenue"); } //On récupère l'id de l'article $id = $bdd->lastInsertId(); die ("Article ajouté avec le numéro $Id"); }else { die("Le formulaire est incomplet"); } } ?> <html> <head> <title>Insersion BDD</title> <meta charset="utf-8"> </head> <body> <form method="POST"> <div> <label for="TYPE">TYPE</label> <input type="text" name="TYPE" id="TYPE"> </div> <div> <label for="NOM">NOM</label> <input type="text" name="NOM" id="NOM"> </div> <button type="Submit">ENREGISTRER</button> </form>
Partager