警告:mysqli_query()需要至少2个参数,给定1个.什么?

use*_*637 7 php mysqli

我创建了一个PHP页面,它应该从数据库中选择两个名称并显示它们.

它只是说:

<?php mysqli_connect(localhost,tdoylex1_dork,dorkk,tdoylex1_dork);
$name1 = mysqli_query("SELECT name1 FROM users
ORDER BY RAND()
LIMIT 1");

$name2 = mysqli_query("SELECT name FROM users
ORDER BY RAND()
LIMIT 1");

?>

<title>DorkHub. The online name-rating website.</title>
<link rel="stylesheet" type="text/css" href="style.css">
<body bgcolor='EAEAEA'>
<center>
<div id='TITLE'>
    <h2>DorkHub. The online name-rating website.</h2>
</div>
    <p>
    <br>
    <h3><?php echo $name1; ?></h3><h4> against </h4><h3><?php echo $name1; ?></h3>
    <br><br>
    <h2 style='font-family:Arial, Helvetica, sans-serif;'>Who's sounds the dorkiest?</h2>
    <br><br>
    <div id='vote'>
    <h3 id='done' style='margin-right: 10px'>VOTE FOR FIRST</h3><h3 id='done'>VOTE FOR LAST</h3>
Run Code Online (Sandbox Code Playgroud)

我的代码是:

<?php mysqli_connect(localhost,tdoylex1_dork,dorkk,tdoylex1_dork);
$name1 = mysqli_query("SELECT name1 FROM users
ORDER BY RAND()
LIMIT 1");

$name2 = mysqli_query("SELECT name FROM users
ORDER BY RAND()
LIMIT 1");

?>

<title>DorkHub. The online name-rating website.</title>
<link rel="stylesheet" type="text/css" href="style.css">
<body bgcolor='EAEAEA'>
<center>
<div id='TITLE'>
    <h2>DorkHub. The online name-rating website.</h2>
</div>
    <p>
    <br>
    <h3><?php echo $name1; ?></h3><h4> against </h4><h3><?php echo $name1; ?></h3>
    <br><br>
    <h2 style='font-family:Arial, Helvetica, sans-serif;'>Who's sounds the dorkiest?</h2>
    <br><br>
    <div id='vote'>
    <h3 id='done' style='margin-right: 10px'>VOTE FOR FIRST</h3><h3 id='done'>VOTE FOR LAST</h3>
Run Code Online (Sandbox Code Playgroud)

Chi*_*tte 26

问题是你没有保存mysqli连接.将您的连接更改为:

$aVar = mysqli_connect('localhost','tdoylex1_dork','dorkk','tdoylex1_dork');
Run Code Online (Sandbox Code Playgroud)

然后将其包含在您的查询中:

$query1 = mysqli_query($aVar, "SELECT name1 FROM users
    ORDER BY RAND()
    LIMIT 1");
$aName1 = mysqli_fetch_assoc($query1);
$name1 = $aName1['name1'];
Run Code Online (Sandbox Code Playgroud)

另外,不要忘记将连接变量作为字符串包含在上面.这就是导致错误的原因,但是你使用的函数是错误的,mysqli_query返回一个查询对象但是为了获取数据,你需要使用像mysqli_fetch_assoc这样的用户http://php.net/manual/en/mysqli-result .fetch-assoc.php实际上将数据输出到变量中,如上所述.


小智 5

mysqli_query2个参数外,第一个变量是mysqli_connect等效变量,第二个是您提供的查询

$name1 = mysqli_connect(localhost,tdoylex1_dork,dorkk,tdoylex1_dork);

$name2 = mysqli_query($name1,"SELECT name FROM users ORDER BY RAND() LIMIT 1");
Run Code Online (Sandbox Code Playgroud)