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 :

Problème d'update BDD


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Par défaut Problème d'update BDD
    Bonjour,

    J4ai un petit problème au niveau d'une requete préparée, lors de l'update les modifications ne se font que partiellement c'est a dire que par exemple code postal ne devient pas le code postal saisi par l'internaute mais :code_postal dans la base de données.

    Quelqu'un pourrait m'aider ?
    Merci d'avance, voici le code :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $adresse = $_POST["adresse"];
    $code_postal = $_POST["code_postal"];
    $ville = $_POST["ville"];
    $telephone_fixe = $_POST["telephone_fixe"];
    $telephone_portable = $_POST["telephone_portable"];
     
    $requete_update = "UPDATE membre SET adresse=':adresse', code_postal=':code_postal', ville=':ville', telephone_fixe=':telephone_fixe', telephone_portable=':telephone_portable' WHERE pseudo='pseudo'";
     
    $prepare_update = $connexion_bdd->prepare($requete_update);
     
    $prepare_update->execute(array(':adresse'=>$adresse,':code_postal'=>$code_postal,':ville'=>$ville,':telephone_fixe'=>$telephone_fixe,':telephone_portable'=>$telephone_portable));
     
    $prepare_update = NULL;
    $connexion_bdd = NULL;

  2. #2
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    tu as essayé d'afficher les variables pour voir ce qu'elles contenaient ?
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Par défaut
    Salut,

    Oui j'ai essayé d'afficher le contenu de la variable $adresse et son contenu est la valeur saisie dans le formulaire, mais dans la base ca enregistre :adresse.....

  4. #4
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    au niveau de ta requete tu te trompe pour les variables tu les as appele :variable au lieu de $variable.
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  5. #5
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ne met pas de guillemets autour de tes marqueurs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requete_update = "UPDATE membre SET adresse=:adresse, code_postal=:code_postal, ville=:ville, telephone_fixe=:telephone_fixe, telephone_portable=:telephone_portable WHERE pseudo='pseudo'";
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Par défaut
    Citation Envoyé par RideKick Voir le message
    au niveau de ta requete tu te trompe pour les variables tu les as appele :variable au lieu de $variable.
    Salut,

    Merci pour ta réponse. Je suis ici en PDO requete préparée, il ne faut normalement pas mettre de vériable dollar sinon ma requete n'est plus protégée contre les caractères spéciaux et il faudrait la proteger via des fonctions natives ou expression régulières... Aussi, c'est étrange qu'ici il faudrait théoriquement le caractère dollar alors que pour la requete d'insertion par exemple les doubles points fonctionnent très bien.

    Tu n'aurais pas une autre idée ?
    Merci....

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Ne met pas de guillemets autour de tes marqueurs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requete_update = "UPDATE membre SET adresse=:adresse, code_postal=:code_postal, ville=:ville, telephone_fixe=:telephone_fixe, telephone_portable=:telephone_portable WHERE pseudo='pseudo'";
    +1, sauf pour le dernier paramètre pseudo. Soit on utilise un marqueur et donc :pseudo que l'on binderas ensuite avec une variable $pseudo (par exemple)
    soit on met direct $pseudo et on ne protège pas la variable. Mais là, la requête à peu de sens.

    Pour ce qui est de répondre à la première question, c'est code_postal qui est inséré dans la base de données car PDO n'interprète pas ton marqueur. En effet il est entre ' '.

    a+

Discussions similaires

  1. [SQL] problème update bdd
    Par ph_anrys dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 07/06/2007, 17h59
  2. [C#] [Oracle] Problème d'Update
    Par _Air_ dans le forum Windows Forms
    Réponses: 12
    Dernier message: 06/04/2005, 13h56
  3. Problème requete update
    Par krfa1 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/03/2005, 08h47
  4. problème pour updater une BD
    Par yoda_style dans le forum ASP
    Réponses: 6
    Dernier message: 17/03/2005, 10h56
  5. [Tomcat]problème jsp et bdd, bibliotheque virtuelle
    Par drapier dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 09/01/2005, 10h54

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