如题,解决
1.Strict Standards: mysqli::next_result;
2.Commands out of sync; you can't run this command now
错误
这是PHP手册上的例子 msyqli::multi_query
提示:Strict Standards: mysqli::next_result() [mysqli.next-result]: There is no next result set. Please, call mysqli_more_results()/mysqli::more_results() to check whether to call this function/method in D:\www\Apache2.2\htdocs\02PHP\index.php on line 25
<?php
$sql = "select current_user();";
$sql .= "select name from stu";
multi_query($sql);
function multi_query($sql){
$mysqli = @new mysqli('localhost', 'root', '123456', 'test');
if($mysqli->connect_errno){
die('connect database error: ' . $mysqli->connect_error);
}
$data = Array();
$mysqli->autocommit(FALSE);
if ($mysqli->multi_query($sql))
{
do {
if ($result = $mysqli->store_result()) {
while ($row = $result->fetch_assoc()) {
$o = Array();
foreach($row as $k => $v){
if(is_string($k)) $o[$k]=$v;
}
$data[] = $o;
}
$result->free();
}
if(!$mysqli->more_results()){
break;
}
} while ($mysqli->next_result());
}
$mysqli->commit();
$mysqli->close();
return $data;
}
?>