gpt4 book ai didi

php - mysqli_multi_query 数据库类错误

转载 作者:行者123 更新时间:2023-11-30 22:14:20 25 4
gpt4 key购买 nike

我确信这个问题甚至在这个类(class)的创建者的博客上都没有问过。

从早上开始我就开始使用 bennettstone 的 php 数据库类.我试图将 MYSQLI_MULTI_QUERY 添加到此类中以一次处理多个查询。

到目前为止,我已经能够修改到以下程度。但它不起作用。我的类(class)非常差,这是我第一次尝试!!

我在两行中收到错误并且不知道我将如何访问多个查询的结果集。假设有 3 个查询。

1) while 语句错误和 mysqli_free_result 语句错误

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given on line 352

请求帮助:

public function multi_select_query( $query )
{
$i = 0;
$row = array();
$query = $this->link->multi_query( $query );

if ( mysqli_error( $this->link ) ) {
$this->log_db_errors( mysqli_error( $this->link ), $query, 'Fatal' );
return false;
} else {
do {
$i ++;
$result[$i] = mysqli_store_result($this->link);

while ( $r = mysqli_fetch_array( $query, MYSQLI_ASSOC )) {
$row[$i][] = $r;
}

mysqli_free_result( $query );

} while ( $this->link->more_results() && $this->link->next_result() );

return $row[$i];
}
}

最佳答案

最后,我以某种方式自己制作了它。

下面是最终的工作类示例,可以使用以下语句通过 foreach 循环轻松访问它。

$result = $dbc->multi_select_query($query);

public function multi_select_query( $query )
{
$row = array();
$i = 0;

$query = $this->link->multi_query( $query );
if( mysqli_error( $this->link ) ){
$this->log_db_errors( mysqli_error( $this->link ), $query, 'Fatal' );
return false;
} else {
do{
$i ++;
if($result[$i] = $this->link->store_result())
{
while ($r[$i] = $result[$i]->fetch_row())
{
$row[$i][] = $r[$i];
}
$result[$i]->free();
}

} while( $this->link->more_results() && $this->link->next_result() );

return $row;
}
}

关于php - mysqli_multi_query 数据库类错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38958382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com