p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre Expert
    Avatar de gentil2005
    Homme Profil pro
    Développeur Web
    Inscrit en
    mai 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services à domicile

    Informations forums :
    Inscription : mai 2007
    Messages : 138
    Points : 1 125
    Points
    1 125

    Par défaut Insertion impossible dans la base de données Postgres

    Bonjour à tous,
    Je viens de débuter avec Postgres en utilisant PHP et déjà, voilà le problème!
    Je me connecte sans problème à ma base mais quand j'essaie d'inserer des données dans la seule table existence, on me dit qu'un colonne n'existe pas. voici donc mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql=pg_query($conn,"INSERT INTO utilisateurs (pseudo, motdepasse) VALUES ($pseudo,$password) RETURNING id")or die ('Erreur connexion'. pg_last_error($conn));
    c'est donc un formulaire de login simple que j'utilise, et quand je saisi "Gentil" dans le champ login, et un mot de passe quelconque, j'ai ce message d'erreur quand je clique sur envoyer:

    Warning: pg_query() [function.pg-query]: Query failed: ERREUR: la colonne « gentil » n'existe pas LINE 1: ...RT INTO utilisateurs (pseudo, motdepasse) VALUES (gentil,gen... ^ in C:\wamp\www\zend_test_site\connexion.php on line 27
    Erreur connexionERREUR: la colonne « gentil » n'existe pas LINE 1: ...RT INTO utilisateurs (pseudo, motdepasse) VALUES (gentil,gen... ^
    pourtant dans la console quand je tape \d , j'ai bien la table complète avec les champs spécifiés ci-haut (en minuscule tous).

    Merci

    Remarque: je viens de remarquer que si dans la requête je remplace les variables php ($pseudo,$password) par des valeurs en dur ('papa','maman') la requête s’exécute et réinsertion est bien constaté, faut-il faire quoi pour ces variables?

  2. #2
    Modérateur
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    mars 2004
    Messages
    3 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : mars 2004
    Messages : 3 710
    Points : 8 676
    Points
    8 676

    Par défaut

    Salut,

    Si tu viens de mysql, postgres fait de même avec les chaines de caractères : tu dois les échapper et les signaler entre '' ou utiliser de préférence un des mécanismes d'échappement spécifique à postgres comme ceci E' ou "dollar quote".
    # Dans la Création, tout est permis mais tout n'est pas utile...

Discussions similaires

  1. insertion automatique dans une base de données
    Par sion76 dans le forum SQL Procédural
    Réponses: 0
    Dernier message: 28/07/2009, 15h46
  2. Insertion erroné dans la base de données
    Par DeeVoiD dans le forum AJAX
    Réponses: 5
    Dernier message: 20/01/2009, 15h22
  3. Insertion Enorme dans une base de données
    Par jad_jad dans le forum Débuter
    Réponses: 3
    Dernier message: 06/06/2008, 18h02
  4. Réponses: 12
    Dernier message: 26/04/2007, 11h38
  5. [HTML] Probleme d'insertion HTML dans une base de données MySQL
    Par tarzanjane dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 28/09/2006, 12h12

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