Bonjour, j'ai un message d'erreur lors de l'envoi du résultat d'un formulaire à une base de donnée mysql que je ne comprend pas ...
Mon formulaire :
Code HTML : 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 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Nouvel article</title> </head> <body> <form action="sendnewart.php" method="post" enctype="multipart/form-data" name="form2"> <p align="center">Catégorie : <br> <select name="categorie"> <option selected>Choisir une catégorie</option> <option>Restaurant</option> <option>Bar</option> <option>Discotheque</option> <option>Autre ...</option> </select> <br><br> Nom : <br> <input type="text" name="nom"> <br><br> Description : <br> <textarea name="description" cols="100%" rows="10"></textarea> <br><br> Avis : <br> <textarea name="avis" cols="100%" rows="10" ></textarea> <br><br> <input name="Submit" type="submit" value="Envoyer"> </p> </form> </body> </html>
Et mon script PHP :
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 <?php // On commence par récupérer les champs if(isset($_POST['categorie'])) $categorie=$_POST['categorie']; else $categorie=""; if(isset($_POST['nom'])) $nom=$_POST['nom']; else $nom=""; if(isset($_POST['description'])) $description=$_POST['description']; else $description=""; if(isset($_POST['avis'])) $avis=$_POST['avis']; else $avis=""; // On vérifie si les champs sont vides if(empty($categorie) OR empty($nom) OR empty($description) OR empty($avis)) { echo '<font color="red">Attention il faut tout remplir !</font>'; } // Aucun champ n'est vide, on peut enregistrer dans la table else { // connexion à la base $db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error()); // sélection de la base mysql_select_db('sortirarouen',$db) or die('Erreur de selection '.mysql_error()); // on écrit la requête sql $sql = "INSERT INTO table(id, categorie, nom, description, avis) VALUES('','$categorie','$nom','$description','$avis')"; // on insère les informations du formulaire dans la table mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); // on affiche le résultat pour le visiteur echo 'Vos infos on été ajoutées.'; mysql_close(); // on ferme la connexion } ?>
J'obtiens ce code d'erreur :
Erreur SQL !INSERT INTO table(id, categorie, nom, description, avis) VALUES('','Autre ...','fvsdfcvsdv','vdfsvsvs','sdfvsdcvsds')
Erreur de syntaxe près de 'table(id, categorie, nom, description, avis) VALUES('','Autre ..' à la ligne 1
Je ne trouve aucune solution à ce problème, et pourtant j'ai cherché pendant des heures sur internet...
Qu'ai-je mal fait ?
Merci
Partager