警告:mysqli_error()只需要1个参数,0给出错误

Aas*_*zam 15 php mysqli

我正在按照教程,但本教程的作者不回答问题 - 但这是我的查询

我收到以下错误警告:mysqli_error()预计正好1个参数,0给出,问题是这行代码 -

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
Run Code Online (Sandbox Code Playgroud)

整个代码是

session_start();

require_once "scripts/connect_to_mysql2.php";

//Build Main Navigation menu and gather page data here

$sqlCommand = "SELECT id, linklabel FROM pages ORDER BY pageorder ASC";

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 

$menuDisplay = '';
while ($row = mysqli_fetch_array($query)) { 
    $pid = $row["id"];
    $linklabel = $row["linklabel"];

    $menuDisplay .= '<a href="index.php?pid=' . $pid . '">' . $linklabel . '</a><br />';

} 
mysqli_free_result($query); 
Run Code Online (Sandbox Code Playgroud)

包含的文件包含以下行

$myConnection = mysqli_connect("$db_host","$db_username","$db_pass","$db_name") or die ("could not connect to mysql"); with reference to $myConnection, why do I get this error?
Run Code Online (Sandbox Code Playgroud)

谢谢

小智 36

mysqli_error()需要您将连接作为参数传递给数据库.这里的文档有一些有用的例子:

http://php.net/manual/en/mysqli.error.php

尝试改变你的问题,你应该保持良好状态:

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error($myConnection)); 
Run Code Online (Sandbox Code Playgroud)


小智 5

mysqli_error函数需要$myConnection作为参数,这就是你得到警告的原因


Jen*_*enz 5

改变

die (mysqli_error()); 
Run Code Online (Sandbox Code Playgroud)

die('Error: ' . mysqli_error($myConnection));
Run Code Online (Sandbox Code Playgroud)

在查询中

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 
Run Code Online (Sandbox Code Playgroud)