Mysqli_Query警告:mysqli_query()期望参数1是mysqli

我在我的代码中得到这个错误,我不知道如何解决它我的代码:

<?php session_start(); include_once"connect_to_mysql.php"; $db_host = "localhost"; // Place the username for the MySQL database here $db_username = "root"; // Place the password for the MySQL database here $db_pass = "****"; // Place the name for the MySQL database here $db_name = "mrmagicadam"; // Run the actual connection here $myConnection= mysql_connect("$db_host","$db_username","$db_pass") or die ("could not connect to mysql"); mysql_select_db("mrmagicadam") or die ("no database"); $sqlCommand="SELECT id, linklabel FROM pages ORDER BY pageorder ASC"; $query=mysqli_query($myConnection, $sqlCommand) or die(mysql_error()); $menuDisplay=""; while($row=mysql_fetch_array($query)) { $pid=$row["id"]; $linklabel=$row["linklabel"]; $menuDisplay='<a href="index.php?pid=' .$pid . '">' .$linklabel. '</a><br/>'; } mysqli_free_result($query); ?> 

这是错误的:

警告:mysqli_query()期望参数1是mysqli,在第17行的C:\ xampp \ htdocs \ limitless \ connect_to_mysql.php中给出的资源

你能帮我吗

你正在混合mysqli和mysql的扩展,这是行不通的。

你需要使用

 $myConnection= mysqli_connect("$db_host","$db_username","$db_pass") or die ("could not connect to mysql"); mysqli_select_db($myConnection, "mrmagicadam") or die ("no database"); 

mysqli比原来的mysql扩展有很多的改进,所以build议你使用mysqli

你正在使用不正确的语法。 如果你阅读文档mysqli_query(),你会发现它需要两个参数。

混合mysqli_query(mysqli $链接,string$查询[,诠释$ resultmode = MYSQLI_STORE_RESULT])

mysql $link一般意味着,build立mysqli连接的资源对象来查询数据库。

所以解决这个问题有两种方法

使用mysql_query()

 $myConnection= mysql_connect("$db_host","$db_username","$db_pass") or die ("could not connect to mysql"); mysql_select_db("mrmagicadam") or die ("no database"); $sqlCommand="SELECT id, linklabel FROM pages ORDER BY pageorder ASC"; $query=mysql_query($sqlCommand) or die(mysql_error()); 

或者mysqli_query();

 $myConnection= mysqli_connect("$db_host","$db_username","$db_pass", "mrmagicadam") or die ("could not connect to mysql"); $sqlCommand="SELECT id, linklabel FROM pages ORDER BY pageorder ASC"; $query=mysqli_query($myConnection, $sqlCommand) or die(mysql_error()) ;