Bonjour,
J'ai un souci sur une page PHP, j'ai passez des heures a chercher sans resultats, merci d'avance.
Quand je met à la ligne 76 :
mysql_query("INSERT INTO anneaux (id, lvl, image, nom, recette, caract, remarque) VALUES ('$id','$lvl','$image','$nom','$recette','$caract','$remarque')") or die(mysql_error());
Ca fonctionne parfaitement mais quand je veut ajouter les condition comme si dessous
mysql_query("INSERT INTO anneaux (id, lvl, image, nom, recette, caract, condition, remarque) VALUES ('$id','$lvl','$image','$nom','$recette','$caract','$condition','$remarque')") or die(mysql_error());
Ca me met :
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 'condition, remarque) VALUES ('10','51','image test','nom test','recette test','c' at line 1
Voici la page :
<center><?php
if (empty($_GET['index.php?page']))
{
// header("location: erreur.php?err=access_denied");
}
switch ($_GET['action'])
{
case "creation":
//Creer l'id et definie les autre variables
mysql_connect($items['host'], $items['user'], $items['password']) or die(mysql_error());
mysql_select_db($items['db']) or die(mysql_error());
$reponseid = mysql_query("SELECT COUNT(*) AS nombre FROM anneaux") or die(mysql_error());
$donneesid = mysql_fetch_array($reponseid);
mysql_close();
$id = $donneesid['nombre'] + 1;
$lvl = Securite::bdd($_POST['lvl']);
$image = Securite::bdd($_POST['image']);
$nom = Securite::bdd($_POST['nom']);
$recette = Securite::bdd($_POST['recette']);
$caract = Securite::bdd($_POST['caract']);
$condition = Securite::bdd($_POST['condition']);
$remarque = Securite::bdd($_POST['remarque']);
$validation = Securite::bdd($_POST['validation']);
if($validation == "oui")
{
if (empty($lvl) OR empty($nom) OR empty($image) OR empty($recette) OR empty($caract))
{
echo "<p>Un des champs est resté vide !!!</p>";
echo "<br /><a href='javascript:history.go(-1)'>Retour</a>";
}
else
{
//verifie si le username existe déjà
mysql_connect($items['host'], $items['user'], $items['password']) or die(mysql_error());
mysql_select_db($items['db']) or die(mysql_error());
$reponse = mysql_query("SELECT COUNT(*) AS nombre FROM anneaux WHERE nom='$nom'") or die(mysql_error());
$donnees = mysql_fetch_array($reponse);
mysql_close();
$test = $donnees['nombre'];
if ($test == 0)
{
//verifie si l'id existe déjà
mysql_connect($items['host'], $items['user'], $items['password']) or die(mysql_error());
mysql_select_db($items['db']) or die(mysql_error());
$ReponseTestID = mysql_query("SELECT COUNT(*) AS nombre FROM anneaux WHERE id='$id'") or die(mysql_error());
$DonneesID = mysql_fetch_array($ReponseTestID);
mysql_close();
$TestID = $DonneesID['nombre'];
if ($TestID == 0)
{
if (1 == 1)
{
mysql_connect($items['host'], $items['user'], $items['password']) or die(mysql_error());
mysql_select_db($items['db']) or die(mysql_error());
mysql_query("INSERT INTO anneaux (id, lvl, image, nom, recette, caract, condition, remarque) VALUES ('$id','$lvl','$image','$nom','$recette','$caract','$condition','$remarque')") or die(mysql_error());
mysql_close();
echo "<br><br><br><center><p class=\"titre\">Votre objet a bien été ajouté !</p>";
}
else
{
echo "Erreur : veuillez contacter un administrateur !!!<br />";
echo "<br /><a href='javascript:history.go(-1)'>Retour</a>";
}
}
else
{
echo "Erreur : ID veuillez contacter un administrateur !!!";
echo "<br /><a href='javascript:history.go(-1)'>Retour</a>";
}
}
else
{
echo "Erreur: cet objet existe déjà !!!";
echo "<br /><a href='javascript:history.go(-1)'>Retour</a>";
}
}
}
else
{
echo "Il faut confirmer l'ajout de l'objet<br /><br /><a href='javascript:history.go(-1)'>Retour</a>";
}
break;
default:
echo "<br><br><center>
<p class=\"title\" size=\"10\"><b>Ajout d'un anneau</b></p>
<br><br><br>
<form action=\"index.php?page=edit_anneaux&action=creation\" method=\"POST\">
<table>
<tr>
<td>Level : </td>
<td><input type=\"text\" name=\"lvl\" size=\"40\"></td>
</tr>
<tr>
<td>Image : </td>
<td><input type=\"text\" name=\"image\" size=\"40\"></td>
</tr>
<tr>
<td>Nom : </td>
<td><input type=\"text\" name=\"nom\" size=\"40\"></td>
</tr>
<tr>
<td>Recette : </td>
<td><input type=\"text\" name=\"recette\" size=\"40\"></td>
</tr>
<tr>
<td>Caracteristique : </td>
<td><input type=\"text\" name=\"caract\" size=\"40\"></td>
</tr>
<tr>
<td>Condition : </td>
<td><input type=\"text\" name=\"condition\" size=\"40\"></td>
</tr>
<tr>
<td>Remarque : </td>
<td><input type=\"text\" name=\"remarque\" size=\"40\"></td>
</tr>
</table><br><br>Etes vous sure de vouloir modifier cet objet?<br><br>
<INPUT TYPE=\"radio\" NAME=\"validation\" VALUE=\"oui\">J'accepte
<INPUT TYPE=\"radio\" NAME=\"validation\" VALUE=\"non\">Je refuse
<br><br><br><br><br><br>
<input type=\"submit\" name=\"submit\" value=\"Valider l'ajout\"></center>
</form></center>";
break;
}
?></center>
Christounet
Messages postés1264Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention29 juillet 20101 389 20 août 2009 à 14:35
Bonjour,
Le nom de ton champs condition est un mot réservé dans Mysql, tu as deux possibilités:
1°) soit tu changes le nom de ton champs
2°) soit tu entoure les noms de tes champs dans l'ordre insert par le caractère `, par exemple `condition`
A plus