为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决未捕获的错误:调用未定义的方法 stdClass::query()

如何解决未捕获的错误:调用未定义的方法 stdClass::query()

PHP
侃侃无极 2022-12-23 10:18:09
无法弄清楚为什么我不断收到此错误。阅读了很多关于此的文章,但我不明白何时使用 stdClass() 以及何时不使用。代码:$mysqli = new \stdClass();$mysqli->connection = new mysqli($mysql_db_hostname, $mysql_db_user, $mysql_db_password, $mysql_db_database);if($mysqli->connection->connect_error){    echo "Error: Failed to make a MySQL connection, here is why: \n";    echo "Errno: " . $mysqli->connect_errno . "\n";    echo "Error: " . $mysqli->connect_error . "\n";    exit;}else {    printf("Succesfully connected to database.");}$sql = "SELECT * from customer";if ($result = $mysqli->query($sql)) {    <<==== ERROR    printf("Success");}第一部分,连接到数据库,似乎很顺利。该错误在“if ($result = $mysqli->query($sql))”行上抛出。我尝试将其更改为:if ($result = {object) $mysqli->query($sql))但这并没有改变任何东西。
查看完整描述

1 回答

?
手掌心

TA贡献1942条经验 获得超3个赞

您的数据库连接是打开的$mysqli->connection,而不是$mysqli,所以您需要写

$result = $mysqli->connection->query($sql)

$mysqli->connect_errno您对and有类似的问题$mysqli->connect_error

请注意,更典型的用法是:

$mysqli = new mysqli($mysql_db_hostname, $mysql_db_user, $mysql_db_password, $mysql_db_database);

那么您的代码将按原样运行。


查看完整回答
反对 回复 2022-12-23
  • 1 回答
  • 0 关注
  • 59 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信