Php 显示数据库中最后两秒的值
早上好 我正在使用php MySQL将学生分数存储在数据库中 我的数据库表是这样的Php 显示数据库中最后两秒的值,php,mysql,database,Php,Mysql,Database,早上好 我正在使用php MySQL将学生分数存储在数据库中 我的数据库表是这样的 25 63 96 85 65 56 56 96 36 23 56 78 98 45 12 现在我正试图显示数据库表中的最后两个值,并希望在我的网站上的任何其他地方显示 我正在使用下面的代码 <?php $q = "SELECT CONCAT (a) FROM record ORDER BY id DESC LIMIT 1;"; $result = mysql_query($
25 63 96 85 65
56 56 96 36 23
56 78 98 45 12
现在我正试图显示数据库表中的最后两个值,并希望在我的网站上的任何其他地方显示
我正在使用下面的代码
<?php
$q = "SELECT CONCAT (a) FROM record ORDER BY id DESC
LIMIT 1;";
$result = mysql_query($q);
$data = mysql_fetch_array($result);
echo $data[0];
?>
上述代码仅显示上一个值…即表中所示的12
我想显示上面表格中的45和12,如下所示
25 63 96 85 65
56 56 96 36 23
56 78 98 45 12
{45}==>{12}
有人能纠正我的代码吗
谢谢…正如评论中所指出的,mysql_*函数已被弃用。最好使用PDO或mysqli_*函数,因为它们将在将来得到支持
我一开始就提到它,因为它对安全和持续支持都非常重要
也就是说,为了得到你想要的结果,你需要做两件事。首先,您的查询必须返回超过1个值,因此必须按照指出的那样增加限制,然后必须显示两个值,而不仅仅是返回值列表中的第一个值(这就是$data[0]
现在正在做的事情-只返回数组中的第一项)
试着这样做:
<?php
$q = "SELECT CONCAT (a) FROM record ORDER BY id DESC
LIMIT 2;";
$result = mysql_query($q);
$data = mysql_fetch_array($result);
echo "{" . $data[1] . "}==>{" . $data[0] . "}"; //prints: "{45}==>{12}"
?>
如果不确定数组中是否存在键,则可以使用empty
函数,该函数检查键是否已设置(isset
),以及它是否具有非假值
if (empty($data[0] == false) {
echo $data[0];
}
if (empty($data[1] == false) {
echo $data[1];
}
文件:
文档:PDO
文档:mysqli.*
文档:内爆
文档:isset
文档:empty
按描述排序限制2从数据库中获取最后两条记录。Um,
Limit 2
。不要使用mysql.*
方法,因为它们已被弃用,并且存在严重的安全漏洞;但它仍然只显示最后一个值。。。