0

我的代码可以呼出某人的名字,它适用于某些 id,但不适用于其他人。这是代码:

$sid = $_SESSION['id'];
$sql = mysql_query("SELECT * FROM users WHERE id='$sid'");
$row = mysql_fetch_array($sql);
$fname = $row['fname'];
.
.
.
<?php echo $fname; ?>'s Profile

知道这只能在某些时候起作用吗?我正在使用 PHP 和 MySQL。我回应了 $sid,它给出了正确的 ID。

4

2 回答 2

0

值 IS 可能来自数据库列并包含空字符串或为 NULL。您应该使用特定的 id 直接检查数据库,以确定具体期望什么。

这将解释你的结果。

于 2012-12-05T20:05:26.343 回答
0

您没有检查查询是否返回任何结果。

先做个检查:

if ($sql) { // the query worked,
    while($row = mysql_fetch_array($sql)) {
        $fname = $row['fname'];
        ....
    }
}else {
    .. there was an error ...
    echo "Error: ".mysql_error();
}

你可以做一个var_dump($row)来看看内容。

于 2012-12-05T19:50:30.540 回答