Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php PDO变量不适用于sql限制代码_Php_Mysql_Pdo - Fatal编程技术网

Php PDO变量不适用于sql限制代码

Php PDO变量不适用于sql限制代码,php,mysql,pdo,Php,Mysql,Pdo,我研究这个问题已经有一段时间了,甚至在参考了之前提出的其他问题之后,我似乎也不明白我做错了什么 工作解决方案: $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT 1 , 7"); $limit1 = 1; $limit2 = 7; $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT :start

我研究这个问题已经有一段时间了,甚至在参考了之前提出的其他问题之后,我似乎也不明白我做错了什么

工作解决方案:

  $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT 1 , 7");
  $limit1 = 1;
  $limit2 = 7;
  $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT :start , :end");
  $stmt->execute(array(':start' => $limit1, ':end' => $limit2));
非工作解决方案:

  $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT 1 , 7");
  $limit1 = 1;
  $limit2 = 7;
  $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT :start , :end");
  $stmt->execute(array(':start' => $limit1, ':end' => $limit2));
我以前从未遇到过像这样使用php的pdo/sql问题,显然不理解为什么会发生这种情况


谢谢你的帮助

在那之前,我也遇到过同样的问题 试试这段代码

  $limit1 = 1;
  $limit2 = 7;
  $stmt = $dbh->prepare("SELECT * FROM tempTable ORDER BY id ASC LIMIT :start , :end");
  $stmt->bindParam(':start',$limit1);
  $stmt->bindParam(':end',$limit2);
  $stmt->execute();
它应该和它一起工作