PHP存储过程Error: Commands out of sync; you can't run this command now

本文介绍了一种解决PHP调用MySQL存储过程时遇到的错误方法:在两次调用存储过程中间关闭并重新建立数据库连接。同时展示了如何使用PHP进行分页查询,包括设置字符集、执行存储过程和获取结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP调用MySQL存储过程出现Error: Commands out of sync; you can’t run this command now

需要在两次调用存储过程中间关闭连接,然后再重新建立一个数据库连接

<?php
header('Content-type:text/html; charset=utf-8');
//1.传入页码
$pageSize=5;//每页显示数据条目数
$showPage=3;//显示页码的个数
$p=$_GET['p'];//当前页
$page=($p-1)*$pageSize;//当前页第一个要显示的条数
//2.根据页码取出数据:php->mysql处理
$link=mysqli_connect('localhost','root','lidekun9132','users','3306');
if(!$link){
	die("连接失败:".mysqli_connect_error);
}
mysqli_query($link,"set names utf8;");
//$sql="select * from users_message limit ".$page.","."$pageSize;";
$sql="call users.select_users_message('$page','$pageSize');";
//echo $sql;
$result=mysqli_query($link,$sql);
$arr = [];
while($row = mysqli_fetch_assoc($result)){
	$arr[] = $row;
}
mysqli_free_result($result);
mysqli_close($link);
/*
	实现分页
 */
$link=mysqli_connect('localhost','root','lidekun9132','users','3306');
if(!$link){
	die("连接失败:".mysqli_connect_error);
}
mysqli_query($link,"set names utf8;");
//$total_sql="select count(*) as c from users_message;";
$total_sql="call users.select_users_count_message();";
$res=mysqli_query($link,$total_sql);
if (!$res) {

    printf("Error: %s\n", mysqli_error($link));
    exit();
}
$total_result=mysqli_fetch_assoc($res);//获取数据库记录数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值