@AVEN1Q
css js php

Pdo->query() дважды выполняет запрос?

Всем добрый вечер.
Вот, например, код:

И использую я prepare и execute без параметров, или query - нет разницы, все равно 2 раза.
Не поможете разобраться?
Пересмотрел много текста про PDO и ответа не нашел. Спасибо.

$dsn = 'mysql:host=localhost;dbname=test';
$dbh = new PDO($dsn, 'root', '');

//$caseFolding = 0;
//$dbh->setAttribute(\PDO::ATTR_CASE, $caseFolding);
//$dbh->setAttribute(\PDO::ATTR_EMULATE_PREPARES, false);

$dbh->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);

$sql = "CREATE TABLE B (X INT)";

$stmt = $dbh->prepare($sql);
$stmt->execute();

$sql = "INSERT B VALUES (2), (3), (4), (5), (NULL)";
//$stmt = $dbh->prepare($sql);
//$stmt->execute();
$result = $dbh->query($sql);
debug($result);

00ed1b2b1cac45e3a8d7347fcd16ebe2.PNG
  • Вопрос задан
  • 342 просмотра
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Убедись, что файл выполняется только 1 раз.
Чаще всего двойные запросы - это результат кривого фронт контроллера который запускается на любой запрос к сайту.
Сделай поле типа варчар и пиши в него $_SERVER['REQUEST_URI'] и увидишь
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы