Php 在PDO中获取特定的返回行信息

Php 在PDO中获取特定的返回行信息,php,pdo,record,fetch,Php,Pdo,Record,Fetch,我有一个表存储登录信息,如日期、时间等。每当用户登录我的网站时,我都将这些信息存储在表中。我还想告诉他上次登录是什么时候,所以我需要向他显示最后一行信息。 我怎样才能在PDO中做到这一点?我写了这段代码,但它返回的是最后一条记录,不是我需要的 $sql2 = "SELECT date,hour FROM tbl_logins WHERE uid = ? ORDER BY id DESC LIMIT 1"; $q = $db->prepare($sql2); $q->execute(a

我有一个表存储登录信息,如日期、时间等。每当用户登录我的网站时,我都将这些信息存储在表中。我还想告诉他上次登录是什么时候,所以我需要向他显示最后一行信息。
我怎样才能在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'];

应该只返回一行。我猜呢?会话变量不正确,或者SQL中有错误。PDO运行在什么模式下?例外情况?默认值?

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

$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_登录代码以存储当前登录日期和时间。

请给出一些示例数据,以供用户在tbl_登录中存储。@Enam很清楚。用户ID、登录时间、登录日期在存储当前登录信息之前,您需要检索最后一次登录信息。不更改当前代码,或者您需要修改一点您的代码。谢谢
$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'];