Page 1 sur 1

probleme de requete

Posté : 30 juin 2005, 15:33
par VaN
le form :

Code : Tout sélectionner

<table> <tr> <td width="46">#1 :</td> <td><input type="file" name="pic1" /></td> </tr> <tr> <td width="46">alt #1 :</td> <td><input type="text" name="alt1" /></td> </tr> <tr> <td>#2 :</td> <td><input type="file" name="pic2" /></td> </tr> <tr> <td width="46">alt #2 :</td> <td><input type="text" name="alt2" /></td> </tr> <tr> <td>#3 :</td> <td><input type="file" name="pic3" /></td> </tr> <tr> <td width="46">alt #3 :</td> <td><input type="text" name="alt3" /></td> </tr> <tr> <td>#4 :</td> <td><input type="file" name="pic4" /></td> </tr> <tr> <td width="46">alt #4 :</td> <td><input type="text" name="alt4" /></td> </tr> </table>
le code :
for ($i=1;$i<=4;$i++) {
if (isset($_FILES['pic'.$i]['name']) && $_FILES['pic'.$i]['name']!='') {
$pic = $_FILES['pic'.$i]['name'];
$alt = $_POST['alt'.$i]['name'];
echo $pic." / ".$alt."<br />";

$sql_pics = "INSERT INTO market_pics VALUES ('','$id_market_article','$pic',$date',$alt')";
echo "SQL : ".$sql."<br>";
$query_pics = mysql_query($sql_pics) OR die("Erreur : ".mysql_error());
}
}
echo "<br />pics sent<br />";
les resultats des différents echo :

VaN.jpg / f
SQL : INSERT INTO market_articles VALUES ('','sg','fsg','fhg','dfh','2005-1-01','dhdg')
Erreur : Erreur de syntaxe près de '',f')' à la ligne 1

Comme on le voit dans les echo, il prend bien le nom de l'image VaN.jpg (surement la premiere), mais dans la requete, il ne le met pas.

ma boucle for() est foireuse ?

Re: probleme de requete

Posté : 30 juin 2005, 15:42
par zeus
Je dirais plutôt que c'est le code qui est foireux : tu construit la requete $sql_pics et tu affiche $sql :shock:
$sql_pics = "INSERT INTO market_pics VALUES ('','$id_market_article','$pic',$date',$alt')";
echo "SQL : ".$sql."<br>";

Posté : 30 juin 2005, 15:44
par VaN
effectivement. (trop de requetes tue les requetes :lol: )

voila le bon echo $sql_pics :

VaN.jpg / f
SQL : INSERT INTO market_pics VALUES ('','31','VaN.jpg',2005-1-01',f')
Erreur : Erreur de syntaxe près de '',f')' à la ligne 1


Raaaah, trouvé, manquait juste des ' dans la requete

Posté : 30 juin 2005, 15:47
par zeus
A la fin de ta requete, il manque des '

Tu aurais pu le voir tout seul si tu avait pris le temps

Et je te conseille vivement de prendre l'habitude de sortir tes variables de tes chaines, ç aévite pas mal de pb
$sql_pics = "INSERT INTO market_pics VALUES ('','".$id_market_article."','".$pic."','".$date."','".$alt".')";