我得到了一个简单的查询:
$con = mysqli_connect("host","username","password","default_database");
if(mysqli_connect_errno($con))
{
mysqli_connect_error();
}
else
{
$query = "SELECT * FROM `users_t`";
$result = mysqli_query($query) or die (mysql_error());
while($row = mysqli_fetch_assoc($result))
{
echo $row['email'];
}
}
运行此查询绝对没有任何帮助。没有错误,但同时没有结果。我无法弄清楚什么是错的,请帮帮我。
答案 0 :(得分:2)
看起来这里可能会发生一些事情:
!$con
声明中检查mysqli_connect_errno($con)
而不是if
。mysql_error()
时调用mysqli_error()
,并将连接传递给它。再次,根据documentation 尝试一下,看看这是否可以解决您的问题:
<?php
$con = mysqli_connect("host","username","password","default_database");
if(!$con) {
print mysqli_connect_error();
} else {
$query = "SELECT * FROM `users_t`";
$result = mysqli_query($con, $query) or die (mysqli_error($con));
while($row = mysqli_fetch_assoc($result)) {
echo $row['email'];
}
}
答案 1 :(得分:0)
$result = mysqli_query($query) or die (mysql_error());
需要一个mysqli资源链接,而不是mysql_error()
if ($result = mysqli_query($con,$query))
{
while($row = mysqli_fetch_assoc($result))
{
echo $row['email'];
}
}
答案 2 :(得分:0)
PHP区分大小写,因此有一个非常好的更改,即您的数据库中的列实际上名为Email
,然后在检查$row['email']
时没有结果,因为{{1必须是大写的。
您可以做的是确保在PHP中使用正确的大小写,或者只选择您想要的字段。 MYSQL并不具有案例敏感性,因此如果您执行以下操作,它将起作用。
另一种检查您是否拥有合适案例的好方法:使用E
(我已将其添加到代码中以便向您展示)
var_dump($row)