0

我有一个表存储登录信息,例如日期、时间等。每当用户登录我的网站时,我都会将这些信息存储在表中。另外我想告诉他他上次登录的时间,所以我需要向他显示最后第二行的信息。
我怎样才能在 PDO 中做到这一点?我写了这段代码,但它返回最后一条记录,而不是我需要的。

$sql2 = "SELECT date,hour FROM tbl_logins WHERE uid = ? ORDER BY id DESC LIMIT 1";
$q = $db->prepare($sql2);
$q->execute(array($_SESSION['uid']));
$r = $q->fetch();
$fdate = $r['date'];
$hour = $r['hour'];
4

2 回答 2

0

简单回答:确认登录后,检索上次登录信息:

$sql2 = "SELECT fdate,hour FROM tbl_logins WHERE uid = ? ORDER BY id DESC LIMIT 1";
$q = $db->prepare($sql2);
$q->execute(array($_SESSION['uid']));
$r = $q->fetch();
$fdate = $r['fdate'];
$hour = $r['hour'];

在那之后:

运行更新 tbl_logins 代码以存储当前登录日期和时间。

于 2012-10-30T08:14:38.940 回答
0
$r = $q->fetch();

应该只返回一行。我猜?您的 SESSION var 不正确,或者您的 SQL 中有错误。PDO 运行在什么模式下?例外?默认?

于 2012-10-30T08:06:12.950 回答