显示数据库

时间:2016-03-13 03:53:59

标签: 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($q);
     $data = mysql_fetch_array($result);

     echo $data[0];
?>

上面的代码只显示最后一个值....这是上面显示的12个表...

我想从上面显示的表中显示45和12这样......

  

{45} ==&GT; {12}

任何人都可以更正我的代码......

...谢谢

2 个答案:

答案 0 :(得分:2)

在注释中指出Saitama,不推荐使用mysql_ *函数。最好使用PDO或mysqli_ *函数,因为它们将来会得到支持。

我在一开始就提到它,因为它对安全性和持续支持都非常重要。

话虽这么说,你需要做两件事才能得到你想要的结果。首先,您的查询必须返回多于1的值,因此LIMIT必须在sgeddes指出时增加,然后您必须显示这两个值,而不仅仅是返回值列表中的第一个值(这是{ {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}" ?> 是一个数组,因此需要将其转换为字符串。我通过引用它的元素来做到这一点,但这是一个相当粗略的方法。例如,如果数据库中只有1个值,则尝试$data会抛出通知,因为数组中没有第二个值。

echo $data[1]是一个方便使用的方法,因为您可以将数组转换为字符串并使用值(如逗号)将值粘合在一起。

implode

如果您不确定某个数组中是否存在某个键,则可以使用echo implode(", ", $data); //prints "12, 45" (12 first because it is the first item in the array) 函数检查该键是否已设置(empty),以及是否存在非假名值。

isset

文档:

答案 1 :(得分:1)

$ query =“SELECT CONCAT(a)FROM record ORDER BY id DESC      限制2“;

按DESC限制2从数据库获取最后两条记录。