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 :

Mises à jour et insertions sûres avec PDO [PDO]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Par défaut Mises à jour et insertions sûres avec PDO
    Bonjour,

    débutant en PDO, je n'arrive pas à trouver de doc. sur la protection des UPDATE et INSERT.

    Est-ce automatique ?

    Voilà mon 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
    15
    16
    17
    18
    19
    20
     
    try
    {
    $cnx = new PDO("mysql:host=$host;dbname=$db", $user, $password);
    $sql = "UPDATE
    ma_table
    SET
    champ_titre=	'$_POST[titre]'	,
    champ_etat = 	'$_POST[etat]'
    WHERE
    champ_id = '$id'
    " ;
    $nb_updates = $cnx->exec($sql) ;
    $cnx = null;
    }
    catch (PDOException $e)
    {
    print "Erreur ! : " . $e->getMessage() . "<br/>";
    die();
    }
    Je n'ai pas bien compris l'usage de QUOTE...

  2. #2
    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
    Comme indiqué dans la doc, il est recommandé d'utiliser les requetes préparées plutot que QUOTE : http://fr2.php.net/manual/fr/pdo.prepare.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $cnx = new PDO("mysql:host=$host;dbname=$db", $user, $password);
    $sql = "UPDATE
    ma_table
    SET
    champ_titre= :titre,
    champ_etat = :etat
    WHERE
    champ_id = :id
    " ;
    $sth = $cnx->preapre($sql) ;
    $sth->execute(array(':titre'=>$_POST['titre'], ':etat'=>$_POST['etat'], ':id'=>$id));
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé Avatar de php_de_travers
    Inscrit en
    Juin 2004
    Messages
    460
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 460
    Par défaut
    Merci beaucoup pour cette piste de travail.
    Je vais fouiller la doc dans ce sens.

    Et merci pour ton exemple.

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

Discussions similaires

  1. [PDO] mise a jour de deux tables avec PDO
    Par Invité dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 10/10/2011, 01h44
  2. Mise à jour d'une table avec une autre
    Par Lucien dans le forum SQL
    Réponses: 2
    Dernier message: 20/04/2006, 10h46
  3. [DOM4J] Mise à jour des docs xml avec dom4j
    Par kodo dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 06/04/2006, 21h48
  4. Mise à jour dans un formulaire avec condition
    Par Bourni dans le forum Access
    Réponses: 4
    Dernier message: 06/03/2006, 22h13
  5. Mise à jour d'une table avec un fichier csv
    Par blackangel dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 26/05/2005, 14h46

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