警告:mysqli_query()期望至less有2个参数,给出1。 什么?

我做了一个PHP页面,应该从数据库中select两个名称并显示它们。

它只是说:

Warning: mysqli_query() expects at least 2 parameters, 1 given in /home/tdoylex1/public_html/dorkhub/index.php on line 4 Warning: mysqli_query() expects at least 2 parameters, 1 given in /home/tdoylex1/public_html/dorkhub/index.php on line 8 

我的代码是:

 <?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> 

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

 $aVar = mysqli_connect('localhost','tdoylex1_dork','dorkk','tdoylex1_dork'); 

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

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

另外不要忘记把你的连接variables作为string,就像我上面那样。 这是什么导致错误,但你使用的function是错误的,mysqli_query返回一个查询对象,但获取数据,这需要用户像mysqli_fetch_assoc http://php.net/manual/en/mysqli-result .fetch-assoc.php实际上将数据输出到一个variables,如上所述。