Protection des chaines de caractères pour MySQL via Objet PDO

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Protection des chaines de caractères pour MySQL via Objet PDO

par Victor BRITO » 31 oct. 2007, 17:15

Autrement dit, au lieu et place de mysql_real_escape_string(), tu auras :
<?php 
$toto = 'Toto -- ';
$tata = ' -- TATA';
$pdo = new PDO ('mysql:host=localhost;dbname=ta_base', 'root', 'mdp');
$prep = "SELECT colonne FROM table WHERE toto=:toto AND tata=:tata";
$sql = $pdo -> prepare ($prep);
$sql -> execute (array (':toto' => $toto, ':tata' => $tata));
$resultat = $sql -> fetch ();
?>

par Tracker » 31 oct. 2007, 14:27

Salut,

Il te faut préparer tes ordres, et c'est PDO qui gère les escapes quand tu fais les binds.


Tracker.

Protection des chaines de caractères pour MySQL via Objet PD

par Kedell » 31 oct. 2007, 13:37

Bonjour,

Je cherche l'équivalent de la fonction mysql_real_escape_string dans le cadre d'une connection à une base mySQL via un objet PDO.

Grosso modo, je cherche un moyen de protéger les caractères spéciaux (', ", ...) de mes chaines de caractères lors des imports en base, sans être obligé de passer par des expressions regulieres.

Merci à ceux qui pourront m'aider.