Aide sur une erreur mysql

mitchreward Messages postés 7 Statut Membre -  
 le père -
Bonjour,

J'ai un problème lors de la requête mysql :

INSERT INTO 'fichierclient'('pays', 'prenom', 'nom', 'departement', 'genre') VALUES ([france],[mitch],[award],[74],[m])

Apache me retourne cette erreur :

Parse error: syntax error, unexpected T_STRING in /home/www/08eb9d71d0032574021a9e9e8e197aeb/web/mysqlconnect.php on line 14

C'est peut etre bete mais je me creuse la tete dessus depuis un bon moment.Avez-vous une idée de ce qui pose problème svp?

merci d'avance.

12 réponses

  1. maka54 Messages postés 721 Statut Membre 80
     
    ni des crochets et ni des doubles quotes, mais des simples quotes,

    et les quotes qui entour le nom de table et des champs, c'est simple quote comment ?

    touche du 4 ou touche du 7 ?
    1
  2. le père
     
    Bonjour

    INSERT INTO est une instruction mysql, pas PHP.

    Pour faire appel à mysql en PHP :

    mysql_query ("INSERT INTO 'fichierclient'('pays', 'prenom', 'nom', 'departement', 'genre') VALUES ('france','mitch','award','test','m') ") or die(mysql_error();
    1
    1. le père
       
      ou mysqli_query si tu utilises mysqli plutôt que mysql
      0
  3. Latinox Messages postés 397 Statut Membre 112
     
    Bonjour,

    Dans tes paramètres VALUES au lieu de mettre des crochets, essaye avec des guillemets.
    Sinon, vérifie bien les types de tes champs si ils correspondent bien aux valeurs que tu entres.
    0
  4. mitchreward Messages postés 7 Statut Membre
     
    Merci pour ta réponse rapide, les type de champs sont tous en "varchar" excepté pour "département" qui est en "int"

    J'ai essayé avec des "" plutôt que des crochets, mais c'est ce que j'avais fait à la base, et .. même erreur..
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Latinox Messages postés 397 Statut Membre 112
     
    Vérifie si sur la ligne précédente il ne manque pas un ";", des fois cela vient de la ligne juste avant celle où l'erreur est signalée.
    0
  7. mitchreward Messages postés 7 Statut Membre
     
    Même erreur j'ai changé les doubles quotes par cela :

    INSERT INTO 'fichierclient'('pays', 'prenom', 'nom', 'departement', 'genre') VALUES ('france','mitch','award','test','m')

    Pour info ça c'est la ligne d'avant : C'est la fin d'une connexion string qui se termine bien par ;

    or die ("non connecté au serveur MySQL.") ;

    je ne comprend pas
    0
  8. mitchreward Messages postés 7 Statut Membre
     
    Voila tout mon script php :

    <?

    $hote = "mysql.inkmyarms.com" ;
    $user = "XXXXXXXX" ;
    $password = "XXXXXXXX" ;
    $nomdebase = "inkmyarmscom" ;

    $connexion = mysqli_connect( $hote, $user, $password , $nomdebase )

    or die ("non connecté au serveur MySQL.") ;

    INSERT INTO 'fichierclient'('pays', 'prenom', 'nom', 'departement', 'genre') VALUES ('france','mitch','award','test','m')

    ?>

    J'ai changé le type de champs "département" en varchar depuis, toujours la meme ... d'erreur ...
    0
  9. mitchreward Messages postés 7 Statut Membre
     
    merci le père !

    Effectivement cela va beaucoup mieux . mais j'ai toujours cette erreur et je ne localise pas dans la ligne que tu m'a donnée ou ce ; pose problème.

    Parse error: syntax error, unexpected ';' in /home/www/08eb9d71d0032574021a9e9e8e197aeb/web/mysqlconnect.php on line 17

    RRR désolé
    0
  10. le père
     
    or die(mysql_error());

    Il manquait une parenthèse
    0
  11. mitchreward Messages postés 7 Statut Membre
     
    Ok, merci c'est gentil. Il subsiste une erreur de syntaxe, mais je vais chercher, c'est gentil
    0
  12. mitchreward Messages postés 7 Statut Membre
     
    FFf je ne m'en sort pas...

    j'ai toujours cette erreur que je ne comrpend pas :

    Warning: mysqli_query() expects at least 2 parameters, 1 given in /home/www/08eb9d71d0032574021a9e9e8e197aeb/web/mysqlconnect.php on line 13

    Voici la ligne en question :

    mysqli_query("INSERT INTO fichierclient VALUES('','france','mitch','award' , '74' ,'m')");

    merci
    0
  13. le père
     
    FFf je ne m'en sort pas.
    Où cherches-tu donc ? Dans la doc PHP, c'est pourtant très bien expliqué :
    http://www.php.net/manual/fr/mysqli.query.php
    Le premier paramètre doit être l'identifiant de lien retourné par mysqli_connect
    Remarque 1 : tu n'aurais pas eu ce problème si tu avais utilisé les fonctions mysql plutôt que mysqli
    Remarque 2 : quand on a un problème avec une fonction, on lit la page du manuel concernant cette fonction. On n'a pas besoin d'apprendre tout le manuel par coeur. Je ne savais pas qu'il fallait ce paramètre avec mysqli car je ne l'utilise jamais, mais j'ai mis 2 minutes à trouver.
    0