gpt4 book ai didi

PHP 错误 -> 警告:mysqli_stmt::execute():无法获取 mysqli_stmt |警告:mysqli_stmt::close()

转载 作者:可可西里 更新时间:2023-11-01 06:57:11 30 4
gpt4 key购买 nike

我在尝试修改某些表时不断收到此错误。这是我的代码:

/**  <- line 320
*
* @param array $guests_array
* @param array $tickets_array
* @param integer $seat_count
* @param integer $order_count
* @param integer $guest_count
*/
private function book_guests($guests_array, $tickets_array, &$seat_count,
&$order_count, &$guest_count){
/* @var $guests_array ArrayObject */
$sucess = false;
if(sizeof($guests_array) >= 1){
//$this->mysqli->autocommit(FALSE);
//insert the guests into guest, person, order, seat
$menu_stmt = $this->mysqli->prepare("SELECT id FROM menu WHERE
name=?");
$menu_stmt->bind_param('s',$menu);
//$menu_stmt->bind_result($menu_id);

$table_stmt = $this->mysqli->prepare("SELECT id FROM tables WHERE
name=?");
$table_stmt->bind_param('s',$table);
//$table_stmt->bind_result($table_id);

$seat_stmt = $this->mysqli->prepare("SELECT id FROM seat WHERE
name=? AND table_id=?");
$seat_stmt->bind_param('ss',$seat, $table_id);
//$seat_stmt->bind_result($seat_id);
for($i=0;$i<sizeof($guests_array);$i++){

$menu = $guests_array[$i]['menu'];
$table = $guests_array[$i]['table'];
$seat = $guests_array[$i]['seat'];

//get menu id
if($menu_stmt->execute()){
$menu_stmt->bind_result($menu_id);
while($menu_stmt->fetch())
;
}
$menu_stmt->close();

//get table id
if($table_stmt->execute()){
$table_stmt->bind_result($table_id);
while($table_stmt->fetch())
;
}
$table_stmt->close();

//get seat id
if($seat_stmt->execute()){
$seat_stmt->bind_result($seat_id);
while($seat_stmt->fetch())
;
}
$seat_stmt->close();

$dob = $this->create_date($guests_array[$i]['dob_day'],
$guests_array[$i]['dob_month'],
$guests_array[$i]['dob_year']);
$id = $this->add_person($guests_array[$i]['first_name'],
$guests_array[$i]['surname'], $dob,
$guests_array[$i]['sex']);

if(is_string($id)){
$seat = $this->add_seat($table_id, $seat_id, $id);
/* @var $tickets_array ArrayObject */
$guest = $this->add_guest($id,$tickets_array[$i+1],$menu_id,
$this->volunteer_id);
/* @var $order integer */
$order = $this->add_order($this->volunteer_id, $table_id,
$seat_id, $id);

if($guest == 1 && $seat == 1 && $order == 1){
$seat_count += $seat;
$guest_count += $guest;
$order_count += $order;

$success = true;
}
}
}
}
return $success;
} <- line 406

警告如下:

The person PRSN10500000LZPH has been added to the guest tablePRSN10500000LZPH added to table (1), seat (1)The order for person(PRSN10500000LZPH) is registered with volunteer (PRSN10500000LZPH) at table (1) and seat (1)PRSN10600000LZPH added to table (1), seat (13)The person PRSN10600000LZPH has been added to the guest tableThe order for person(PRSN10600000LZPH) is registered with volunteer (PRSN10500000LZPH) at table (1) and seat (13) Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 358 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 363 Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 366 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 371 Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 374 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 379 PRSN10700000LZPH added to table (1), seat (13)The person PRSN10700000LZPH has been added to the guest tableThe order for person(PRSN10700000LZPH) is registered with volunteer (PRSN10500000LZPH) at table (1) and seat (13) Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 358 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 363 Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 366 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 371 Warning: mysqli_stmt::execute(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 374 Warning: mysqli_stmt::close(): Couldn't fetch mysqli_stmt in /Users/olatunjigbadamosi/Sites/ST_Ambulance/FormDB.php on line 379 PRSN10800000LZPH added to table (1), seat (13)The person PRSN10800000LZPH has been added to the guest tableThe order for person(PRSN10800000LZPH) is registered with volunteer (PRSN10500000LZPH) at table (1) and seat (13)

最佳答案

我不认为它会以这种方式工作。当您关闭语句(例如 $menu_stmt->close();)时,您也释放了语句句柄。因此,在第二次循环中,您不再可以使用准备好的语句。

尝试在循环执行完毕后关闭语句。

关于PHP 错误 -> 警告:mysqli_stmt::execute():无法获取 mysqli_stmt |警告:mysqli_stmt::close(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2512087/

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