PDO: не выполняется несколько запросов - PullRequest
0 голосов
/ 18 января 2011

Код

DB Dump

index.php

Выпуск

  • Запуск index.php из браузера не дает вывод, когда это должно дать вам массив из 4 строк. ( выпуск )
  • Выполнение оператора sql прямо в база данных дает вам 4 строки в качестве вывода. (как и ожидалось)
  • Кроме того, выполняется более простой запрос, такой как SELECT * FROM company в index.php дает правильный вывод. (как и ожидалось)

Так что нет проблем с соединением pdo и нет проблем с операторами sql, и я все еще не получаю требуемый вывод.

PHP Версия: 5.3.1 | Версия MySQL: 5.1.41

1 Ответ

0 голосов
/ 18 января 2011

Как и вышеупомянутый ответ, это вопрос безопасности.Они сделали это, чтобы убедиться, что вы не можете вставить «злые» значения в запрос, например, «OR 1 = 1;SELECT * FROM пользователей '.Я знаю, что вы используете подготовленные операторы, так что в любом случае этого не может произойти, но PDO_MySQL все еще не позволяет этого, насколько мне известно.Драйвер (более новый?) PDO_MYSQLND, однако, действительно , кажется, позволяет это.

Насколько я могу судить, этот драйвер в настоящее время не готов к производству.Думаю, вам придется сделать это в двух запросах, или, если они всегда вызываются в определенной последовательности, вы можете скрыть это внутри хранимой процедуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...