PDO:未运行多个查询

时间:2011-01-18 14:55:07

标签: php sql mysql stored-procedures pdo

代码

DB Dump

index.php

问题

  • 从浏览器运行index.php 它应该没有输出 给你一个4行的数组。 (问题
  • 直接执行sql语句 数据库为您提供4行作为输出。(正如预期的那样)
  • 此外,运行更简单的查询,如 index.php中的SELECT * FROM company 为您提供正确的输出。(正如预期的那样)

所以pdo连接没有问题,sql语句没有问题,我仍然没有得到所需的输出。

PHP版本:5.3.1 | MySQL版本:5.1.41

1 个答案:

答案 0 :(得分:0)

就像上面提到的答案一样,这是一个安全问题。他们这样做是为了确保您不能在查询中插入“邪恶”值,例如'或1 = 1; SELECT * FROM users'。我知道你正在使用准备好的语句,所以这绝不会发生,但据我所知,PDO_MySQL仍然不允许这样做。 (较新?)PDO_MYSQLND驱动程序然而 似乎允许这样做。

据我所知,该驱动程序目前尚未准备好投入生产。猜猜你必须在两个查询中完成它,或者如果它们总是以特定的顺序调用,你可以在存储过程中隐藏它。