请我需要一些帮助php SELECT FROM WHERE

时间:2014-02-17 14:20:31

标签: php

我的问题是当我想使用用户名从数据库中显示某人的信息时:

我收到此错误这是注意:未定义的变量:第27行的/opt/lampp/htdocs/aa/hhh.php中的fname

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

1 个答案:

答案 0 :(得分:0)

首先,这不是错误,而是通知。但是,这个特殊的通知暗示了代码中的错误,虽然不是语法错误,但是逻辑错误:你的while循环的主体没有被执行 - 即你忘了检查你是否在第一时间得到任何结果。 (另外,如果你得到 more 而不是一个结果,那么只会显示最后一个)。

请检查您的数据库,看看为什么没有用户名,尽管您显然希望这样。

另外,我假设(希望!)你的id字段在数据库中是数字,在这种情况下你不应该写引号:

$result = mysqli_query($dbcon, "SELECT * FROM Members WHERE id=70" );