Problème de syntaxe
Résolu
polarbird
Messages postés
104
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Après de nombreuses et vaines tentatives je me tourne vers vous pour demander de l'aide.En effet j'essaie de faire un simple formulaire d'insertion PHP
Et voilà ce que j'obtiens :
Erreur SQL !INSERT INTO signal (numero,cat,id,msg,choix,description,auteur,date,ok) VALUES ('','1','3','2','1','dd','BaraKuda','1408829032','0')
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'signal (numero,cat,id,msg,choix,description,auteur,date,ok) VALUES ('','1','3','' at line 1
Voici ma table sql:
https://i.vgy.me/T291KN.png
D'avance je vous remercie de votre aide,
polarbird
Après de nombreuses et vaines tentatives je me tourne vers vous pour demander de l'aide.En effet j'essaie de faire un simple formulaire d'insertion PHP
<?php session_start(); include 'pdo.inc.php'; include 'activite.inc.php'; ?> <html> <head> <meta charset="utf-8" /> <title>Signaler un message</title> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <center><a href="index.php"><img src="logo3.png" title="Forum" alt="Forum" /></a></center> <div id="barre"> <span class="left">Index > Signaler un message</span> <?php if(!isset($_SESSION['pseudo'])) { echo '<span class="right"><a href="login.php">Connexion</a> • <a href="inscription.php">Inscription</a></span>'; } else { ?> <?php include 'db.inc.php'; $test_mp = mysql_query('SELECT COUNT(*) FROM mp WHERE id_destinataire="'.$_SESSION['id'].'" AND ok="0"'); $test_mp2 = mysql_fetch_row($test_mp); $mp_non_lu = $test_mp2[0]; ?> <?php include 'menu.php'; ?> <?php } ?> </div> <?php if(!isset($_SESSION['id'])){ echo '<p>Vous ne pouvez pas accéder à cette page !</p>'; }else{ ?> <h1 style="text-align:center;">Signaler un message</h1> <div id="contenu"> <form method="post" action="signal.php?cat=<?php echo $_GET['cat']; ?>&id=<?php echo $_GET['id']; ?>&message_id=<?php echo $_GET['message_id']; ?>"> <?php include 'db.inc.php'; if (isset($_POST['go']) && $_POST['go'] == 'Envoyer') { if(!empty($_POST['details'])){ $cat = $_GET['cat']; $id1 = $_GET['id']; $message_id = $_GET['message_id']; $type = $_POST['type']; $details = $_POST['details']; $auteur_id = $_SESSION['pseudo']; $ok = 0; $date = time(); $sql = "INSERT INTO signal (numero,cat,id,msg,choix,description,auteur,date,ok) VALUES ('','$cat','$id1','$message_id','$type','$details','$auteur_id','$date','$ok')"; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); $erreur = '<p>Vos infos on été ajoutées.</p>'; mysql_close(); }else{ $erreur = '<p>Veuillez remplir tous les champs !</p>'; } } ?> <?php if(isset($erreur)){ echo $erreur; } ?> <label for="type">Type</label><select class="textinput" name="type"> <option value="1" selected>Propos à caractère raciste,antisémite ou discriminatoire</option> <option value="2">Propos diffamatoires,insultants ou offensants allant à l'encontre d'un ou plusieurs membres</option> <option value="3">Spam ou publicité</option> <option value="4">Propos déplacés ou à caractère pornographique ou sexuel</option> <option value="5">Autre</option> </select><br /> <label for="details">Détails</label><textarea placeholder="Détails" class="textinput" name="details" rows="15" cols="75" autofocus></textarea><br /> <input type="submit" name="go" value="Envoyer" /> <input type="reset" value="Effacer" /> </form> </div> <?php } ?>
Et voilà ce que j'obtiens :
Erreur SQL !INSERT INTO signal (numero,cat,id,msg,choix,description,auteur,date,ok) VALUES ('','1','3','2','1','dd','BaraKuda','1408829032','0')
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'signal (numero,cat,id,msg,choix,description,auteur,date,ok) VALUES ('','1','3','' at line 1
Voici ma table sql:
https://i.vgy.me/T291KN.png
D'avance je vous remercie de votre aide,
polarbird
A voir également:
- Problème de syntaxe
- Trouver erreur de syntaxe fichier txt ✓ - Forum Python
- Trouver erreur de syntaxe fichier txt pix - Forum Autoit / batch
- Convertion .txt ------>.wtf HELP!!! ✓ - Forum Windows
- La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte - Forum Logiciels
- Syntaxe code puk orange - Guide
2 réponses
Bonsoir
Pas de bol ! 'signal' fait partie des mots réservés de mysql, évite de le prendre comme nom de base, de table ou de champ.
Tu peux si tu y tiens vraiment, mais alors entoure-le d'accents graves (Alt Gr-7) :
INSERT INTO `signal` ...
Au passage, tu as un
Pas de bol ! 'signal' fait partie des mots réservés de mysql, évite de le prendre comme nom de base, de table ou de champ.
Tu peux si tu y tiens vraiment, mais alors entoure-le d'accents graves (Alt Gr-7) :
INSERT INTO `signal` ...
Au passage, tu as un
include 'pdo.inc.php';mais tu n'utilises pas PDO, et tu as deux fois
include 'db.inc.php';. Tu es sûr de savoir ce que tu fais ?