Posts Tagged ‘PDO’

Pour les requêtes préparées, avec PDO, on peut mettre en place, lors du binding des arguments, un filtrage sur le type attendu.

La documentation donne des exemples pour les méthodes

/* Exécution d'une requête préparée en liant des variables PHP */
$calories = 150;
$couleur = 'rouge';
$sth = $dbh->prepare('SELECT nom, couleur, calories
    FROM fruit
    WHERE calories bindParam(':calories', $calories, PDO::PARAM_INT);
$sth->bindParam(':couleur', $couleur, PDO::PARAM_STR, 12);
$sth->execute();

Que se passe-t-il lorsque j’envoie un mauvais type ?

PDO s’occupe de caster les variables pour qu’elles correspondent au type attendu.
avec PARAM_INT, si on propose une chaîne, elle devient la valeur 0
avec PARAM_STR, 15 (longueur max de chaîne), la chaîne est tronquée à 15 caractères.

Publicités