我的问题是当我想使用他的用户名显示数据库中某人的信息时:
我收到此错误,这是注意:未定义的变量:fname 在/opt/lampp/htdocs/aa/hhh.php 第 27 行。
<?php
include 'con_to_db.php';
$result = mysqli_query($dbcon, "SELECT * FROM Members WHERE Username='youba'" );
while($row = mysqli_fetch_array($result))
{
$fname = $row['Username'];
$age = $row['Age'];
}
?>
<html>
<body>
<h1> this is <?php echo $fname?> </h1>
</body>
</html>
但是当我使用 ID 时,我从数据库中获取信息没有任何问题:
<?php
include 'con_to_db.php';
$result = mysqli_query($dbcon, "SELECT * FROM Members WHERE id='70'" );
while($row = mysqli_fetch_array($result))
{
$fname = $row['Username'];
$age = $row['Age'];
}
?>
<html>
<body>
<h1> this is <?php echo $fname?> </h1>
</body>
</html>
首先,这不是错误,而是通知。但是,这个特定的通知确实暗示了代码中的一个错误,尽管不是语法错误,而是一个逻辑错误:while 循环的主体没有被执行 - 即你忘记检查你是否首先得到任何结果。(此外,如果您得到多个结果,则只会显示最后一个结果)。
请检查您的数据库以了解为什么用户名不存在,尽管您显然希望它在那里。
另外,我假设(希望!)您的id字段在数据库中是数字,在这种情况下,您不应该写引号:
$result = mysqli_query($dbcon, "SELECT * FROM Members WHERE id=70" );