带有php的MySQL,最近显示50个

时间:2014-11-20 23:40:06

标签: php html mysql mysqli

我有一个数据库,它只是在单个列中的表中记录单词(旁边有RID)。我想做的就是按顺序显示单词,中间有一个空格(我在下面有一个工作代码)

<?php
 $mysql_host = "mysql1.000webhost.com";
 $mysql_database = "db name";
 $mysql_user = "user";
 $mysql_password = "pass";

 // Create connection
 $conn = new mysqli(     "mysql1.000webhost.com","databaseuser","password","databasename");
 // Check connection
 if ($conn->connect_error) {
 die("Connection failed: " . $conn->connect_error);
 }

 $sql = 'SELECT Words FROM Poetry '; 
 $result = $conn->query($sql);

 if ($result->num_rows > 0) {
// output data of each row
 while($row = $result->fetch_assoc()) {
 echo $row["Words"]. " ";
 }
 } else {
 echo "0 results";
 }
 ?> 

但是。我想只显示MOST RECENT数据库条目的设定数量(比如50)(即具有最高RID的50)。有人可以快速告诉我我需要哪些代码(在php中),它会在网页上显示最近的50个代码吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

不要使用PHP,只需将其添加到您的查询中。

 $sql = 'SELECT Words FROM Poetry order by RID desc limit 50';

此查询将按RID降序对结果集进行排序,最近我假设是最近的,并将结果集限制为50条记录。

答案 1 :(得分:1)

您可以使用

SELECT Words FROM Poetry order by RID desc limit 0,50

0是偏移量,50是limit.u可以根据需要动态更改这些值。

为了更好的安全目的,您可以使用mysqli预准备语句。   您可以看到动态绑定参数的dynamically-bind_param-array-mysqli

答案 2 :(得分:0)

尝试将其保存在变量中并在while语句后回显它。

像这样的东西

$all_words = '';

if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$all_words = "$all_words, $row['Words']";
}
echo"$all_words";

} else {
echo "0 results";
}