Un bout de code simple qui ne marche pas

Résolu
MasterOfQuebec Messages postés 66 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 5 mai 2009 - 18 juil. 2007 à 02:26
MasterOfQuebec Messages postés 66 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 5 mai 2009 - 18 juil. 2007 à 21:22
Voici le premier code que j'ai fais utilisant sql :

   include "config.php";


   $connect = mysql_connect($serveur,$nick,$pass) or die ("erreur de connexion");
   mysql_select_db('veilleux',$connect) or die ("erreur de connexion base");


   $description = $_POST['description'];
   $nom = $_POST['nom'];
   $username = $forum_user['username'];


   mysql_query("INSERT INTO ud_files('file_id', 'file_description', 'file_nom', 'file_par') VALUES('', '$description', '$nom', '$username')");

SURPRISE... Il ne marche pas (bien sur c'étais trops beau pour être vrais) et je ne sais pas pourquoi (je n'ai pas d'erreur mais il n'écrit rien dans la bdd).

Pouvez vous m'aider svp?

14 réponses

tcheeb Messages postés 66 Date d'inscription lundi 18 avril 2005 Statut Membre Dernière intervention 27 octobre 2010
18 juil. 2007 à 21:11
Hello

pour écarter le problème du ' utilise la fonction addslashes() pour les champs du type varchar, text, ...

Un peu de doc

http://fr.php.net/addslashes
http://fr.php.net/manual/fr/function.stripslashes.php

Bonne soirée
3
TestOunet_0 Messages postés 10 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 23 novembre 2007
18 juil. 2007 à 09:30
Salut, je suis débutant mais, je pense qu'il y a un problème au niveau de ta requête, essaie en écrivant de cette maniè



$sql = "INSERT  INTO ud_files (file_id, file_description, file_nom, file_par)
            VALUES ('', '$description', '$nom', '$username') " ;
 
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;

Autrement, diverses questions pour essayer de localiser le problème.

1) As tu essayé ta requête dans mysql ?
2) As tu essayé de faire un echo de tes variables description nom et username pour voir si elles ressortaient ce que tu voulaient.
3) Au niveau de ton file_id , est-ce un champ que tu as mis en auto-incrément ?

voilà essaie déjà de test ceci et dit moi si ça marche, sinon réponds aux questions ^^ bonne journée
0
TestOunet_0 Messages postés 10 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 23 novembre 2007
18 juil. 2007 à 09:59
A revoir ta requête, j'ai également l'impression qu'elle n'est simplement pas executée, à vérifier.
0
arshycon Messages postés 7 Date d'inscription mercredi 18 juillet 2007 Statut Membre Dernière intervention 18 juillet 2007
18 juil. 2007 à 10:08
le mieux c'est de faire
INSERT  INTO  ud_files(file_id, file_description, file_nom, file_par)  values('".$description."', '".$nom."', '".$username."') " ;
0

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

Posez votre question
TestOunet_0 Messages postés 10 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 23 novembre 2007
18 juil. 2007 à 10:15
Oui ceci dit, tu oublie le champ file_id, et qui plus est il faudrait déja trouver la source de son erreur et je ne pense pas qu'elle soit liée au type de syntaxe que tu préconise (certainement à juste titre d'ailleurs ^^)
0
arshycon Messages postés 7 Date d'inscription mercredi 18 juillet 2007 Statut Membre Dernière intervention 18 juillet 2007
18 juil. 2007 à 10:31
non li bien le champs file_id y es c'est sur sa reque de base qu'il ne la pas mis c'est pour sa  =p après effectivement la syntaxe est peut etre pas le problème
J'ai aussi ce problème mes requete d'insertion ne marchent pas cela peut venir de la base de données notamment si il a mi des index et des foreign key mais étant donné que la sa n'insère rien le pb vien surement de la syntaxe ou alors des name de ses champs qui sont différents de ceux de la requete.
0
TestOunet_0 Messages postés 10 Date d'inscription jeudi 26 octobre 2006 Statut Membre Dernière intervention 23 novembre 2007
18 juil. 2007 à 11:00
Non mais tu as spécifié 4 champs a remplir et dans le values que trois, la valeurs correspondante à sont file_id est values('')
D'où je me pose la question, est-ce un champ auto-incrément ?? auquel cas sa requête se transformerait en
Insert INTO ud_files (file_description, file_nom, file_par)  values('".$description."', '".$nom."', '".$username."')  (pour reprendre ta syntaxe)
0
cs_vinz78 Messages postés 207 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 24 juillet 2007
18 juil. 2007 à 11:33
oui c'est une possibilité a consulté donc sa bdd =)
0
theguitou Messages postés 75 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 14 janvier 2009 34
18 juil. 2007 à 15:33
mysql_query(bla bla) or die(mysql_error());

C'est souvent pratique pour savoir pourquoi ca ne marche pas
0
MasterOfQuebec Messages postés 66 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 5 mai 2009
18 juil. 2007 à 15:36
Oui,
Voici ce que j'ai :
   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 ''file_description', 'file_nom', 'file_par') VALUES('', 'Nom de l'image', 'Ceci est une image', 'MasterOfQuebec' at line 1
0
theguitou Messages postés 75 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 14 janvier 2009 34
18 juil. 2007 à 15:40
Pas d'antislash devant l'apostrophe dans 'Nom de l'image' ??
0
MasterOfQuebec Messages postés 66 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 5 mai 2009
18 juil. 2007 à 15:45
Non sa le fais toujours.
0
theguitou Messages postés 75 Date d'inscription mardi 9 septembre 2003 Statut Membre Dernière intervention 14 janvier 2009 34
18 juil. 2007 à 15:50
Il faudrait que je vois la requete, fais ca stp :

$req = "INSERT INTO ud_files('file_id', 'file_description',
'file_nom', 'file_par') VALUES('', '$description', '$nom',
'$username')";

echo $req;

mysql_query($req);

Si une de tes variable $description, $nom, $username contient le caractere ' , ta requete n'est plus valide.
0
MasterOfQuebec Messages postés 66 Date d'inscription lundi 12 mars 2007 Statut Membre Dernière intervention 5 mai 2009
18 juil. 2007 à 21:22
Merci Beaucoup.
Je vais le savoir maintenent .
0
Rejoignez-nous