我面临类型错误 mysqli_query() argument#1


我面临以下问题。

引用:

致命错误:未捕获类型错误:mysqli_query():参数 #1 ($mysql) 必须是 mysqli 类型,在 C:\location:18 中给出的 bool 堆栈跟踪:#0 C:\location(18): mysqli_query(true, ‘ select*from `us…’) #1 {main} 扔在第 18 行的 C:\location 中

请整理一下。
下面是代码。

PHP
<?php

$dbhost="localhost"; 

$dbuser = "root"; 

$dbpass = "password"; 



$mysql =  mysqli_connect($dbhost, $dbuser, $dbpass, 'userlogin');

if($mysql = true){
 echo "Connection Succesful!";
} else{
    die(mysqli_error);
}
if(mysqli_query($mysql, 'select*from `user info`')){
echo "<br> ERROR SOLVED FOREVER!";
}else{
echo "<h1><br><br> THIS IS AN ERROR!".mysqli_error'</h1>'
}
?>

注意:问题仅出现在第 18 行。连接测试成功。
谢谢。

我尝试过的:

将 $mysql 替换为 mysqli_connect($dbhost, $dbuser, $dbpass, ‘userlogin’); 而是在 mysqli_query() 函数内的第 18 行。 。 有效。

解决方案1

如有疑问,请阅读手册: PHP: mysqli_connect – 手册[^] 它说:

引用:

如果未启用 mysqli 异常模式并且连接失败,则 mysqli_connect() 返回 false 而不是对象。

这与“如果成功,则返回”不同 true”。
如果成功,它会返回一个可以使用的连接对象,而不是布尔值。

更改您的测试以检查 false 代替 true

解决方案2

如果(伊塞特($_SESSION[‘check_login’]))
{
标题(’位置:dashboard.php’);

}

コメント

タイトルとURLをコピーしました