Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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:nextRowset在准备语句的多个行集上_Php_Mysql_Stored Procedures_Pdo_Prepared Statement - Fatal编程技术网

PHP-PDO:nextRowset在准备语句的多个行集上

PHP-PDO:nextRowset在准备语句的多个行集上,php,mysql,stored-procedures,pdo,prepared-statement,Php,Mysql,Stored Procedures,Pdo,Prepared Statement,下面是使用PDO准备和调用MySQL存储过程的PHP脚本。存储过程返回2个行集。第一个包含25行。第二行包含1行。我似乎无法让下一个集合获取第二行集合。我知道存储过程是有效的,因为当我使用mysqli_next_result时它是有效的。谢谢 1)我做错了什么 2.)是否有更有效或更安全的方法来编写此脚本?我对所有ajax调用都使用相同的格式。我知道我可以将$\u GET参数绑定到一个数据类型(字符串、整数)以提高安全性,但存储过程已经做到了这一点 <?php header('Conten

下面是使用PDO准备和调用MySQL存储过程的PHP脚本。存储过程返回2个行集。第一个包含25行。第二行包含1行。我似乎无法让下一个集合获取第二行集合。我知道存储过程是有效的,因为当我使用mysqli_next_result时它是有效的。谢谢

1)我做错了什么

2.)是否有更有效或更安全的方法来编写此脚本?我对所有ajax调用都使用相同的格式。我知道我可以将$\u GET参数绑定到一个数据类型(字符串、整数)以提高安全性,但存储过程已经做到了这一点

<?php
header('Content-type: application/json');
session_start();
if(isset($_SESSION['Logged_In'])){
    $r=array();
    require('db.inc');
    $s=$c->prepare("CALL get_records({$_SESSION['User_ID']},?,?,?)");
    $s->execute($_GET);
    do{$r[]=$s->fetchAll(PDO::FETCH_NUM);}while($s->nextRowset());
    $c=null;
    echo json_encode($r);
}
?>

你得到的是什么?什么是get_记录返回?我弄明白了nextRowset为什么不工作。我需要使用正确的PHP扩展PHP_pdo_mysql_mysqlnd.dll。您$\u获取的内容是什么?什么是get_记录返回?我弄明白了nextRowset为什么不工作。我需要使用正确的PHP扩展PHP_pdo_mysql_mysqlnd.dll。