IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Aucune idée du tout [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2011
    Messages : 61
    Points : 51
    Points
    51
    Par défaut Aucune idée du tout
    voici une erreure sql que je reçois lorsque je tente d'introduire ma requete dans ma table "bookings" :

    Erreur dans l'exécution de la requête 'INSERT INTO bookings(email, name, firstname, phone, table, bottle, soft, people, date_envoi) VALUES ('delvauxo@skynet.be', 'Delvaux', 'Olivier', '0487610422', '2', '3', '4', '5', NOW())'.
    Message de MySQL :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 'table, bottle, soft, people, date_envoi) VALUES ('delvauxo@skynet.be', 'Delvaux'' at line 1
    Je ne comprends absolument pas pourquoi ?!

    J'ai cherché sur google et les seules idées qui ont été énnoncées sont :
    des guillemets ou apostrophes pour un entier (exemple: '1' ou "1")
    Seulement, j'ai tout mis en VARCHAR dans la table bookings

    check the manual that corresponds to your MySQL server version for the right syntax to use near 'table, bottle, soft, people, date_envoi) VALUES ('delvauxo@skynet.be', 'Delvaux'' at line 1

    Me fait penser au fait que les champs table, bottle, soft et people sont des champs select et que le probleme vient de là !
    Qqun aurait-il une idée ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2011
    Messages : 61
    Points : 51
    Points
    51
    Par défaut
    Voici my requete SQL issu de mon fichier php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    		$requete = "INSERT INTO bookings(email, name, firstname, phone, table, bottle, soft, people, date_envoi) "
    			. "VALUES ('$email', '$name', '$firstname', '$phone', '$amountt', '$amountb', '$amounts', '$amountp', NOW())";

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2011
    Messages : 61
    Points : 51
    Points
    51
    Par défaut
    Et voici l'url :

    http://www.privateroom.be/site/posts/booking

    PS : Tous les champs de la table bookings sont en varchar(255)

  4. #4
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    la seule chose que je vois serait que le mot table est un mot réservé, donc ne peut être utilisé comme champs.
    il faut ajouter des doubles quotes " afin qu'il soit interprété comme champs.
    je suis pas sur que ce soit une bonne idée néanmoins d'appeler un champs avec des mots réservés.

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    met un espace après bookings, pour voir

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par sweetasnz Voir le message
    la seule chose que je vois serait que le mot "table" est un mot réservé, donc ne peut être utilisé comme champs.
    ouai faut mettre `table`

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2011
    Messages : 61
    Points : 51
    Points
    51
    Par défaut
    C'est magnifique ! J'ai fais les deux, à savoir :
    - rajouter un espace après bookings
    - remplacer table par `table`

    Merci beaucoup !!!

    Je ne savais pas qu'il fallait rajouter ces doubles quotes `table` !

    Je ne ferais plus l'erreur !

    Cependant Est-ce vraiment nécessaire de changer le nom de mon champs "table" ? Ou alors le fait de rajouter les doubles quotes est suffisant ?!

    Un tout grand merci à tout le monde !

  8. #8
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    Tu peux utiliser table ou n'importe quel mot du moment ou tu l'encadres par des quotes.
    Mais encore une fois et je pense ne pas me tromper, il vaut mieux éviter d'utiliser les mots réservés. Rien qu'au niveau de la lisibilité cela devient compliqué... même toi tu t'es fait prendre au piège puisque tu n'avais pas vu ton erreur... donc à toi d'apprécier.

    Concernant l'ajout de l'espace ce n'est pas utile mais ce n'est pas interdit.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. aucune idée pour mon probleme
    Par beginner1 dans le forum WinDev
    Réponses: 2
    Dernier message: 03/06/2013, 15h36
  2. aucune idée sur menu a droite
    Par minooo dans le forum AWT/Swing
    Réponses: 13
    Dernier message: 02/11/2007, 17h21
  3. Réponses: 2
    Dernier message: 17/06/2005, 23h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo