Erreur mysql et php
Bonjour,
j'ai crée une sorte de panneau d'admin d'ajout de fichier. Ce qui m'évite de ne pas passer directement par la BD pour faire des ajouts de fichiers.
Mais lorsque je valide mon formulaire d'ajout de fichier, cela m'indique une erreur : ""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 << contenu du champ >> "
J'ai remarqué que c'est lorsque qu'il y a du html dans le champ que ça me met cette erreur, et je souhaiterais savoir pour quoi?
Light
Il nous faut tout le message d'erreur pour faire la lumière sur ton problème.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
Voici le code source de la page :
<?php
include("./db_connect.php");
if(!empty($_POST['action'])) {
$partie = $_POST['part'];
$nom = $_POST['nom'];
$mini_description = $_POST['mini_description'];
$episode = $_POST['episode'];
$query = mysql_query("INSERT INTO ".$partie."_cat VALUES('','".$nom."','".$mini_description."','".$episode."')")or die(mysql_error());
$ok = "<b><font color=green>La série animé à été crée avec succès</font></b>";
}
?>
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<p align="left"><b><font size="4" face="Verdana">Ajouter une série animé</font></b></p>
<p align="left"><u><b><font size="2" face="Verdana">Veuillez remplir les champs ci-dessous SVP</font></b></u><b><font size="2" face="Verdana">:</font></b><font face="Verdana"></font></p>
<form name="form1" method="post" action="">
<p><font size="2" face="Verdana"><b>S</b>ection :
<select name="part" id="part">
<option value="episodes">Episode</option>
</select>
</font> </p>
<p><strong><font size="2" face="Verdana">N</font></strong><font size="2" face="Verdana">om de la série animé</font><font face="Verdana"><br></font><i><font size="1" face="Verdana">[Mettre le nom de la série]</font></i><font face="Verdana"><br> <input name="nom" type="text" id="nom">
</font> </p>
<p><font size="2" face="Verdana"><b>D</b>escription (format html)</font><font face="Verdana"><br></font><i><font size="1" face="Verdana">[Mettre une image representant la série ainsi qu'un résumé]</font></i><font face="Verdana"><br><textarea name="mini_description" cols="102" rows="7" id="mini_description"></textarea><br></font><font size="2" face="Verdana"><b>N</b>ombre(s) episode(s)</font><font face="Verdana"><br></font><i><font size="1" face="Verdana">[Nombre épisode(s) uploadé/Nombre total d'épisode(e) de la série]</font></i><font face="Verdana"><br> <input name="episode" type="text" id="episode" value="00/00" size="4">
<br><br></font><font size="2" face="Verdana">Avant de confirmer la validation, veuillez vérifier les informations puis cliquer sur valider.</font></p>
<p>
<input type="submit" name="Submit" value="Valider">
<input name="action" type="hidden" id="action" value="1">
</p>
</form>
<p> <?php echo $ok; ?></p>
</body>
</html>
Quand je met un long texte avec un peu d'html dans "description" par exemple, ca me marque cette erreur
Light
Merci mais je la place où exactement cette fonction?
Light
Tu as regardé la doc ? C'est expliqué.
J'ai lu, mais je comprend pas trop. Si je comprend bien, je place le code dans ma page?
Light
Ben utilise la sur $nom, $mini_description et $episode.
j'ai fait ça
<?php
if (isset($_POST['partie']) && isset($_POST['nom']) && isset($_POST['mini_description'])) && isset($_POST['episode'])) {
// Connect
$link = mysql_connect('censuré', 'censuré', 'censuré');
if(!is_resource($link)) {
echo "Échec de la connexion au serveur\n";
// ... historisation de l'erreur
} else {
// Annule les effets magic_quotes_gpc/magic_quotes_sybase sur ces variables si ON.
if(get_magic_quotes_gpc()) {
$partie = stripslashes($_POST['partie']);
$nom = stripslashes($_POST['nom']);
$mini_description = stripslashes($_POST['mini_description']);
$episode = stripslashes($_POST['episode']);
} else {
$partie = $_POST['partie'];
$nom = $_POST['nom'];
$mini_description = $_POST['mini_description'];
$episode = $_POST['episode'];
}
// Faire une requête sécurisée
$query = $query = mysql_query("INSERT INTO ".$partie."_cat VALUES('','".$nom."','".$mini_description."','".$episode."')")or die(mysql_error());
$ok = "<b><font color=green>La série animé à été crée avec succès</font></b>";
mysql_real_escape_string($partie, $link),
mysql_real_escape_string($nom, $link),
mysql_real_escape_string($mini_description, $link),
mysql_real_escape_string($episode, $link),
mysql_query($query, $link);
if (mysql_affected_rows($link) > 0) {
echo "Produit inséré\n";
}
}
} else {
echo "Remplissez le formulaire proprement\n";
} >
Mais ce n'est pas bon, que dois-je corriger?
merci :)
Light
Besoin d'aide svp
Light
Ecrire un message
Votre message vient d'être créé avec succès.
BB-Code
Pour insérer une URL clickable
Pour insérer une adresse E-mail
Pour annoter
Pour écrire du code
Pour faire un lien vers une fonction PHP
Pour écrire du texte préformaté
Pour écrire du texte en gras
Pour écrire du texte en italique
Pour écrire du texte souligné
Pour écrire du texte barré
Pour écrire un titre principal
Pour écrire un titre secondaire
Pour écrire une liste
Smiley
:bond:
:boxe:
:bsmile:
:bump:
:clap:
:coeur:
:cool:
:cry:
:eek:
:evil:
:fleur:
:fou2:
:fou:
:grin:
:grrr:
:hammer:
:hippy:
:hum:
:idee2:
:idee:
:kdo:
:king:
:ko:
:lol:
:love2:
:love:
:mad:
:maitre:
:noel:
:oops:
:raa:
:razz:
:roll:
:sad:
:skull:
:smile:
:timide:
:trink:
:vice:
:vomi:
:wink:
:zzz: