我现在真的遇到了问题。我试了几十年,我找不到它为什么不起作用。我想让登录的用户在特定页面上查看他们的电子邮件。我现在尝试了一个新代码,我收到了这个错误:Notice: Undefined variable: row in
我使用的代码是:
<?
$username = $_SESSION['username'];
$sql = "select * from users where username=" . $username . "";
echo $sql;
$query = mysql_query($sql);
while ($row = mysql_fetch_array($query)) {
}
?>
和
<?php echo $row['email']; ?>
答案 0 :(得分:0)
<?php
$username = $_SESSION['username'];
$query = mysql_query("select * from users where username='".$username."'");
while ($row = mysql_fetch_array($query)) {
$email=$row["email"];
}
echo $email;
?>
试试这个。 不要使用mysql_ *函数
答案 1 :(得分:0)
我认为......问题出在SQL查询中。我建议您的列“用户名”类似于VARCHAR(50)。所以你必须添加引用。
$sql = "select * from users where username='" . $username . "'";
答案 2 :(得分:0)
我看到了一个错误和一个设计问题。
您已经设计了脚本,以便在while循环的条件下打印最后分配给$ row的内容。
您收到错误,因为查询未返回任何内容并且循环未运行。因此,永远不会分配$ row。话虽这么说,如果你想要做的就是在返回的第一条记录中显示“email”列的值,你可能不想使用while循环。如果你确实想要,那就停止它。
在$ result上调用mysql_fetch_assoc()(不返回太多数据),并检查它是否返回FALSE(找不到一个或多个记录)。
if((row = mysql_fetch_assoc($result)) === false)
die("Error.");
&GT?; 电子邮件: