PHP Mysqli错误:mysqli_query()期望参数1为mysqli,布尔值为

时间:2016-04-22 10:08:53

标签: php mysqli

这不是问题,我需要你的帮助。我读了类似的线程,但我无法在我的代码中调试问题。你能提供正确的解决方案吗?

<?php
/*variable declaration*/
$host="localhost";
$user="root";
$pass="";
$dbname='mydatabase';

/*connection to mysql server*/
$connect = mysqli_connect($host,$user,$pass);

/*selecting database*/
$selectdb=mysqli_select_db($connect,$dbname);

if(!$selectdb){
    echo 'Failed to connect. Wrong username or database.';
}else{
    echo 'Connection successful.';
}

/*creating task*/
$query = "SELECT 'Name', 'Password' FROM 'db' ORDER BY 'id'";

if(mysqli_query($selectdb,$query)){
echo 'Success';
}else{
echo '<br>Failed';
}
?>

enter image description here

3 个答案:

答案 0 :(得分:0)

修改

$query = "SELECT 'Name', 'Password' FROM 'db' ORDER BY 'id'";

$query = "SELECT `Name`, `Password` FROM db ORDER BY 'id'";

你只是不能在查询的列名上使用引号,要么使用反引号,要么根本不使用。

答案 1 :(得分:0)

if(mysqli_query($connect,$query)){...

在此,您需要使用$connect而不是$selectdb

答案 2 :(得分:0)

<?php
/*variable declaration*/
$host="localhost";
$user="root";
$pass="";
$dbname='mydatabase';
$connect = mysqli_connect($host,$user,$pass,$dbname);

/*I avoided this line & used $connect inside if() statement which worked    perfectly*/
//$selectdb = mysqli_select_db($connect,$dbname);

if(!$connect){
    echo 'Failed to connect. Wrong username or database.';
}else{
    echo 'Connection successful.';
}

/*creating task*/
$query = "SELECT `Name`, `Password` FROM `db` ORDER BY `id`";

if($query_run = mysqli_query($connect,$query)){
echo 'Success';
}else{
echo '<br> Failed';
}