php - 一个 PHP 页面中有两个 MySQL 查询 - 错误 "Trying to get property of non-object"

标签 php mysql

这可能非常非常简单,但是如何在同一个 PHP 页面中执行两个查询?

我正在尝试这样做...

<?PHP
error_reporting(E_ALL);
ini_set('display_errors', '1');
include 'db.php';

// FIRST QUERY;

$intCompanyID = 2612;
$sql =  "CALL sp_get_company ($intCompanyID)";
$result = $connect->query($sql);
if ($result->num_rows > 0) :
    $row = mysqli_fetch_assoc($result);
    $company_name = $row["company_name"];
    $contact_TEL = $row["contact_TEL"];
    echo "company_name=".$company_name."<br />";
    echo "contact_TEL=".$contact_TEL."<br />";
endif;

//SECOND QUERY;

$sql =  "CALL sp_list_by_region (1)";
$result = $connect->query($sql);
if ($result->num_rows > 0):
    while($row = $result->fetch_assoc()) {
    echo "company_name = ".$row["company_name"]."<br />";
}
endif;
$connect->close();
?>

第一个查询可以自行运行。第二个查询独立运行。但是当我运行两者时,我收到错误“尝试获取非对象的属性”。显然我没有正确地重用连接。有人可以给我解释一下吗?

提前非常感谢。

最佳答案

这里的问题是由于在一页中使用两个存储过程而不是任意两个 MySQL 查询造成的。 解决方案是在第一个和第二个查询之间添加这两行:

$result->close();
$connect->next_result();

感谢@SlavaRozhev,如果我没有遵循正确的礼仪,我深表歉意 - 我想确保在应得的地方给予认可。

关于php - 一个 PHP 页面中有两个 MySQL 查询 - 错误 "Trying to get property of non-object",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59937309/

相关文章:

php - 如何自动部署网络应用程序

php - 是否解析具有多个扩展名的 PHP 文件?

php - 当有重复时只删除一行

php - 插入语句中的 MySql 表标识符

SQL插入错误

mysql - 区分表名

php - mysql中的许多记录突然消失/丢失

php - 如何使用facebook id登录网站

php - 如何更正 MySQL utf8_general_ci 字段中的双编码 UTF-8 字符串?

php - Android:如何使我检索到的(从 mysql 中)JSON 解析数据添加到 ListView 每分钟刷新一次