Mysql problème de requete

Fermé
yawmy - 19 avril 2008 à 03:18
 Profil bloqué - 20 avril 2008 à 19:40
Bonsoir ;

j'ai un problème avec une requête mysql j'ai essayé ça

$sql="insert into ".$categorie."(titre,article,file,image,date) values ('".$titre."', '".$article."', '".$nom."' , '".$nom2."', '".$date."' )";

$query=mysql_query($sql,$connexion) or die("problème requête ");


mais ça marche pas

14 réponses

Profil bloqué
19 avril 2008 à 03:21
essaye ça:
$sql="insert into categorie(titre,article,file,image,date) values ('$titre', '$article', '$nom' , '$nom2', '$date' )";

$query=mysql_query($sql,$connexion) or die("problème requête ");
0
Merci pour votre réponse mais j'ai toujours problème de requête , si vous permettez je met le code de ma page

<?php
include ma connexion

$categorie=$_POST["categorie_bouton"];
$titre=$_POST["titre"];

$article_avant=$_POST["article"];
$article=nl2br(htmlspecialchars($article_avant));


$date = Date("d/m/Y H:i:s");



$nom=$_FILES["file"]["name"];
list($name, $ext) = explode(".", $nom);
$ext=".".$ext;
$chemin = "./images_articles/".$nom;
move_uploaded_file($HTTP_POST_FILES["file"]["tmp_name"],$chemin);




$nom2=$_FILES["image"]["name2"];
list($name2, $ext2) = explode(".", $nom2);
$ext2=".".$ext2;
$chemin2 = "./images_articles/".$nom2;
move_uploaded_file($HTTP_POST_FILES["image"]["tmp_name2"],$chemin2);





$sql="insert into categorie(titre,article,file,image,date) values ('$titre', '$article', '$nom' , '$nom2', '$date' )";

$query=mysql_query($sql,$connexion) or die("problème requête ");

echo"<b>l'Article est bien ajouté a : ".$categorie."</b>" ;

mysql_close();

?>

je reçois problème de requête
0
Profil bloqué
19 avril 2008 à 03:32
Puisque je veux connaitre l'erreur remplace cette partie partie:
or die("problème requête ")
par ça:
or die(mysql_error())
0
Profil bloqué
19 avril 2008 à 03:43
Il t'as donné quoi comme erreur?
0
il ma donné

Duplicate entry '0' for key 1
0
au début j'ai oublié de mettre $ sur catégorie et javais un message comme quoi la table n'existe pas alors j'ai mis le $ et j'ai ajouté id sur les deux coté :


$sql="insert into $categorie(id,titre,article,file,image,date) values (' ','$titre', '$article', '$nom' , '$nom2', '$date' )";

$query=mysql_query($sql,$connexion) or die(mysql_error()) ;

mais la j'ai l'erreur de Duplicate entry '0' for key 1
0
Profil bloqué
19 avril 2008 à 03:56
ton attribut id n'est il pas "auto_incrément"?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oui merci vous avez raison , j'ai oublié de mettre auto_incrément, je viens de l'essaye les champs texte sont enregistrés dans mysql mais 'image' et 'file' champs réserve pour les images ne sont pas envoyé probablement la syntaxe n'est pas bien
0
Profil bloqué
19 avril 2008 à 04:10
image et file sont quel type?
0
les deux sont type file , sur mon formulaire j'ai mis la possibilité d'ajouté deux image et j'ai mis

<input name="file" type="file" />
<input name="image" type="file" />
0
Profil bloqué
19 avril 2008 à 04:21
j veux dire leurs types dans ta base de données Mysql.
0
oui excuse moi :) c'est varchar
0
Profil bloqué
19 avril 2008 à 04:28
En fait là ce que tu dois stocjer dans ta DATABASE mysql ce seront les chemins pour chacune des 2 fichiers: pour "file" et "image".
0
Profil bloqué
19 avril 2008 à 04:29
Donc en suivant ton script tu dois stocker "chemin" et "chemin2" respectivement pour les attributs image et file.
0
oui il va stocké juste les chemins ,je l'avais essayé un jour avec la même syntaxe mais juste une seule image ça marché très bien mais la je ne sais pas pourquoi ça marche plus !!
0
Profil bloqué
19 avril 2008 à 04:33
réessye encore! en rectifiant les valeurs affectées aux attributs "file" et "image"
0
malheureusement j'ai essayé de changer le code mais ça marche pas , a propos des attributs "file" et "image" dans mysql
je ne pense pas que c'est pas obligatoire !!
0
Profil bloqué
19 avril 2008 à 05:04
montre ton code
0
nom=$_FILES["file"]["name"];

list($name, $ext) = explode(".", $nom);

$ext=".".$ext;

$chemin = "./images_articles/".$nom;

move_uploaded_file($HTTP_POST_FILES["file"]["tmp_name"],$chemin);


$sql="insert into $categorie(id,titre,article,file,date) values (' ','$titre', '$article', '$nom' , '$date' )";


c'est le même mais juste pour une seule image ,c'est bizzard normalement il dois marché !!
0
Profil bloqué
19 avril 2008 à 05:15
$sql="insert into $categorie(id,titre,article,file,date) values (' ','$titre', '$article', '$nom' , '$date' )";
remplace cette ligne par:
$sql="insert into $categorie(id,titre,article,file,date) values (' ','$titre', '$article', '$chemin' , '$date' )";
0
avec ça le $

$nom=$_FILES["file"]["name"];
0
Profil bloqué
19 avril 2008 à 05:21
non en fait tu dois utiliser $chemin au lieu de $nom,car c'est $chemin dois te donner le chemin exact du fichier.
0
Merci pour votre coup de main ,le $chemin na pas marché je vais me reposé peu être que après je trouverais la solution
0
Profil bloqué
19 avril 2008 à 05:27
cé koi l'erreur qu'il signale?
0
ba il ya pas derreur mais kan je regarde dans ma base mysql dans le champ 'file' je vois que le nom de l'image n'est pas enregistré et kan je regarde mon dossier images_articles est toujours vide
0
Profil bloqué
20 avril 2008 à 19:40
ton code d'upload des fichiers ne marchent pas donc faut le revoir.
0
chercheurbf Messages postés 5 Date d'inscription mercredi 23 janvier 2008 Statut Membre Dernière intervention 19 avril 2008
19 avril 2008 à 22:58
bonjour,
dans ta requete sql d'insertion apres values('\N',
au lieu de values(' ',
\N pour la valeur des champ auto_increment
0