probleme de requete

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : probleme de requete

par zeus » 30 juin 2005, 15:47

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".')"; 

par VaN » 30 juin 2005, 15:44

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

Re: probleme de requete

par zeus » 30 juin 2005, 15:42

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>";

probleme de requete

par VaN » 30 juin 2005, 15:33

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 ?