Erreur syntaxe mais ou ?

Répondre
Meeper
le 26/03/2007 à 23:20
Meeper
Bonsoir,
j'ai une erreur de syntaxe
Erreur SQL !INSERT INTO photo_lan VALUES("","", "2007-03-26 22:59:21")
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 'images/maxi/pic003.gif">", "20' at line 1

mais helas j'ai beau chercher je trouve pas et je parie que c'est flagrant smiley
mon code:
<?php
if(isset($_POST['photo_name'])&& $_POST['photo_name']!= "")
{
include'connexiondb.php';
$date = date("Y-m-d H:i:s");
$lien='<a href="images/maxi/'.$_POST['photo_name'].'.gif"><img src="images/mini/'.$_POST['photo_name'].'.gif"></a>';
$sql = 'INSERT INTO photo_lan VALUES("","'.$lien.'", "'.$date.'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
}
else
{
echo'veuillez remplir tout les champs';
}
?>

ma table:
CREATE TABLE `photos` (
`id_photo` int(6) NOT NULL auto_increment,
`photos_mini` text NOT NULL,
`date_insert_photo` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id_photo`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


Oui aussi je précise que dans le message d'erreur le code de la variable $lien est interpreté donc je vois une petit dessin la ou l'image doit être insérée mais que je ne sais pas le mettre ici dans le forum

merci de votre aide
@+ Meeper
LA GLOBULE
le 26/03/2007 à 23:29
LA GLOBULE
Tu aurais vu ton erreur en faisant un echo $sql smiley

<?php
if(isset($_POST['photo_name'])&& $_POST['photo_name']!= "") {
include'connexiondb.php';

$date = date("Y-m-d H:i:s");
$lien='<a href="images/maxi/'.$_POST['photo_name'].'.gif"><img src="images/mini/'.$_POST['photo_name'].'.gif"></a>';

$sql = "INSERT INTO photo_lan VALUES('', '".mysql_escape_string($lien)."', '".mysql_escape_string($date)."')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
}
else {
echo'veuillez remplir tout les champs';
}
?>


PS : TOUJOURS escaper ce que tu mets dans une requête SQL !
PPS : mettre du html en base, c'est mal ©
Meeper
le 26/03/2007 à 23:33
Meeper
merci pour la rapide réponse mais comment dois je faire alors pour mettre mes liens ?
et est ce dangereux ? je veux dire nivo securité de faire ainsi ?
LA GLOBULE
le 26/03/2007 à 23:46
LA GLOBULE
C'est pas dangereux en soit, mais c'est chiant si jamais un jour tu changes tes images de place.
Cela voudrait dire : modifier toutes les entrées en base.

Moi, je stockerais le minimum syndical en base : soit juste le chemin du fichier, voir même seulement le nom du fichier (si mes images sont dans un seul dossier, ce qui semble être ton cas, excepté le fait de la distinction maxi / mini, mais çà, tu n'as pas besoin du chemin de l'image pour savoir que si tu as une grande image dans maxi, ben théoriquement, tu as la même en petit dans mini).
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours