如何使用php mysql访问表中的数据?

如何使用php mysql访问表中的数据?,php,mysql,Php,Mysql,实际上,我的数据库是连接的,但当我试图从中访问数据时,我没有得到任何结果 $result=mysqli\u query$conn,$sqlthis不工作,并给我错误消息“Table”test。用户“不存在”,但我已创建了一个名为test的表,您可以在附加的屏幕截图中签入。 但当我在控制台中编写相同的查询时,它会给我期望的输出。我的代码如下 <?php $db_host = "localhost"; $db_user = "root"; $db_password = ""; $db_name

实际上,我的数据库是连接的,但当我试图从中访问数据时,我没有得到任何结果 $result=mysqli\u query$conn,$sqlthis不工作,并给我错误消息“Table”test。用户“不存在”,但我已创建了一个名为test的表,您可以在附加的屏幕截图中签入。 但当我在控制台中编写相同的查询时,它会给我期望的输出。我的代码如下

<?php
$db_host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "test";
$conn = mysqli_connect($db_host,$db_user,$db_password,$db_name);
if(!$conn){ echo "failed"; }
echo "success";
$sql = 'SELECT * FROM user';
$result = mysqli_query($conn,$sql);

$a = var_dump($conn);
$b = var_dump($result);
echo $a;
echo $b;

if(mysqli_num_rows($result)>0){
    echo "data fetched";
}
else{
    echo "data access failed.";
}
?>
它正在给这个错误消息


这是控制台

这句话是错误的:

"SELECT * FROM user";
因为此代码是用PHP编写的,而不是在诸如XAMPP之类的MySQL GUI中,所以应该以分号结束语句;在结束引号之前,最后是结束分号

应该这样写:

"SELECT * FROM user ;";
应该是

$sql = "SELECT * FROM user";
$result = mysqli_query($conn,$sql);
while($row = mysqli_fetch_array( $result )) 
{
    echo $row['username'];
}

这将为数据库中与您的查询匹配的每一行提供用户名字段。

我已经在我的设备上测试了您的代码,这里一切正常

然后我尝试输入一个打字错误,而不是从用户输入$sql=SELECT*FROM;我已经从userr输入了$sql=SELECT*;你猜怎么着,我犯了和你一样的错误


因此,您可能也输入了错误,请尝试检查您的数据库表名。

在PHP中,查询中不需要结尾分号。这不会伤害到任何东西,有些人可能会说有一个更清楚,但它不会给你一个错误,就像他所显示的。我已经更新了问题及其相关的错误截图,请帮助var_dump$conn的结果是什么;分配之后?var_dump$result的结果是什么;分配后?我已经更新了问题及其相关屏幕截图,请帮助。事实上,我再次检查没有输入错误,我在这里粘贴了完全相同的代码,并在控制台中使用完全相同的查询提供了所需的输出。我已经更新了这个问题及其相关的屏幕截图,但有错误,请帮助。你能把你的屏幕截图放在你是如何执行相同代码的吗?这是我拼错表名后得到的结果的一部分。尝试在测试数据库中创建一个新表并检查它是否工作,如果不工作,则尝试创建一个新数据库,然后创建一个新表并测试它是否工作。如果上述建议都不起作用,您可能在安装数据库时遇到问题,请尝试重新安装数据库,然后执行与以前相同的操作。这是$conn&$result的var_转储结果的示例。我的PHP代码:$db_host=localhost$db_user=root$db_password=root$db_name=本地$conn=mysqli\u connect$db\u host、$db\u user、$db\u password、$db\u name;如果$conn{echo失败;die;}echo成功$sql=从userr中选择*$结果=mysqli_query$conn$sql;echo“Conn:”;var_dump$conn;回声“结果:”;var_dump$结果$row=mysqli\u fetch\u assoc$result;echo$row['email'];如果mysqli_num_rows$result>0{echo data fetched;}否则{echo data access failed.},实际上那部分与我的问题无关,我只想知道它是否正在访问表。我已经更新了问题及其相关的屏幕截图,有错误,请帮助
$sql = "SELECT * FROM user";
$result = mysqli_query($conn,$sql);
while($row = mysqli_fetch_array( $result )) 
{
    echo $row['username'];
}