Я только начал использовать Php Data Objects, и одна вещь, о которой я не уверен, – это проверить, что какая-то переменная является целым числом, прежде чем использовать ее в запросе. Например, например:
$id = (int)$_POST['id']; // is this required $query = $pdo->prepare("SELECT * FROM `articles` WHERE `id` = ?"); $query->bindValue(1, $id); $query->execute();
Нет, это не требуется по двум причинам:
Вы даете PDO знать, что вы собираетесь запрашивать базу данных для идентификатора столбца. PDO не собирается разбирать что-либо в $_POST['id']
.
Второе значение bindValue
автоматически bindValue
к строке (или любого типа, который вы можете выбрать). Здесь int $data_type = PDO::PARAM_STR