-2

在登录:

$_SESSION['username'] = $username;
$id = mysql_query("SELECT  `id`  FROM  `users` WHERE `username`='" . $username . "'");
$_SESSION['logged_in'] = 1;
$_SESSION['id'] = $id;

索引(试图在此处显示)

Welcome, <?= $username ?><br> ((works))
ID: <?= $id ?>

id 只是显示为 0,而实际上它是 1。

4

1 回答 1

2

mysql_query()返回资源 id,而不是查询的结果。您需要使用mysql_fetch_assoc()mysql_result()获取您的价值:

$res = mysql_query("SELECT  `id`  FROM  `users` WHERE `username`='" . $username . "'");
$result = mysql_fetch_assoc($res);
$id = $result['id'];

或者

$res = mysql_query("SELECT  `id`  FROM  `users` WHERE `username`='" . $username . "'");
$id = mysql_result($result, 0);

还有其他方法可以做到这一点,但这会向您显示一般错误发生的位置。

于 2013-11-08T16:17:20.963 回答