我有这个代码在我的网站上显示两个记录。它目前无法使用。
<?php
//make connection
mysqli_connect('localhost', 'root', 'password', 'databasename')or die('Connection could not be established With msql_connect');
$sql = "SELECT * FROM players ORDER BY bankacc DESC LIMIT 10";
$records = mysqli_query($sql) or die('Connection could not be established With mysqli_query');
?>
创建表我有这个PHP代码:
<?php
while($players=mysqli_fetch_assoc ($records)){
echo"<tr>";
echo"<td>","<center>".$players['name'];"</center>";"<td>";
echo "<td>","<center>","$",number_format($players['bankacc']);"</center>";"<td>";
echo"</tr>";
}//end while
?>
当我尝试运行它时,它说:
无法使用mysqli_query建立连接 在我的网页上,我希望有人可以帮助我。
答案 0 :(得分:1)
你变得困惑/不理解mysqli可以使用的两种方式,无论是以程序方式还是以面向对象的方式。
如果你看到你的代码,你会发现mysqli_connect
没有存储在任何地方,所以mysqli_query
也会抛出错误,你必须把它们连在一起。
编辑:从你的问题代码中你使用的是程序方法,所以这里有解决方法来解决你的错误:
<?php
//make connection
$conn = mysqli_connect('localhost', 'root', 'password', 'databasename')or die('Connection could not be established With msql_connect');
$sql = "SELECT * FROM players ORDER BY bankacc DESC LIMIT 10";
$records = mysqli_query($conn, $sql) or die('A query error has occurred: ' . mysqli_error($conn));
?>
答案 1 :(得分:0)
您对mysqli_connect
的来电失败。这就是你收到错误信息的原因。所以这意味着(至少)您提供的参数之一是错误的 - 主机名,用户名,密码或数据库名称。你必须检查所有四个并修复它们。下面的PHP代码并不重要 - 你没有到达那里。
解决此问题后,您需要从mysqli_connect
捕获返回值,并在以后将其用于数据库调用。
答案 2 :(得分:0)
如果您学习使用php连接数据库,请不要使用mysqli_*
函数。
在您的代码中可能您的数据库或用户信息是错误的,但完全连接和获取数据会改变您的代码(并学习PDO):
<?php
$db = new PDO('mysql:host='. DB_HOST .';dbname='. DB_NAME .';',DB_USER, DB_PASS,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
$result = $db->query("SELECT * FROM players ORDER BY bankacc DESC LIMIT 10")->fetchall();
foreach ($result as $row) {
echo $row['name'] .PHP_EOL;
echo number_format($row['bankacc']);
} ?>