我刚刚开始使用Php数据对象,我不确定的是,在查询中使用它之前,我必须验证某些变量是否为整数。例如,像这样:
$id = (int)$_POST['id']; // is this required
$query = $pdo->prepare("SELECT * FROM `articles` WHERE `id` = ?");
$query->bindValue(1, $id);
$query->execute();
答案 0 :(得分:1)
不需要它有两个原因:
您让PDO知道您将在数据库中查询列ID。 PDO不会解析$_POST['id']
中的任何内容。
bindValue
的第二个值会自动转换为字符串(或您可能想要选择的任何类型)。 Here int $data_type = PDO::PARAM_STR