【发布时间】:2013-07-12 17:19:45
【问题描述】:
我有一个大学的项目。我需要创建一个从数据库生成随机数据的站点。但它也需要生成一个链接。这样人们就可以复制该链接(由于网站正在生成不同的数据,人们可以通过复制 URL 来查看他们想要的数据)。
我正在考虑使用 RAND()。但是加入stackoverlow之后,我发现RAND()并不是一个好办法。
我可以使用 RAND() 获取随机数据,但它没有创建任何 URL。这也是另一个问题。我之前发布过这个问题。我认为我不应该使用 RAND() 函数。
这是我现在使用的代码:
<!--PHP code for fetching data from database-->
<?php
$con = mysql_connect("localhost","root","");
if (!$con){
die('Could not connect: ' . mysql_error());
}
mysql_select_db("xlsx_db", $con);
$result = mysql_query("SELECT * FROM sheet1 ORDER BY RAND() LIMIT 1");
if (!$result) {
echo 'Could not run query: ' . mysql_error();
exit;
}
$row = mysql_fetch_array($result);
echo "<b>Quote: </b>";
echo $row['quote']."<br>";
echo $row['by']."<br>";
?>
任何人都可以请建议我如何做到这一点?任何形式的帮助都将不胜感激。
【问题讨论】:
-
RAND()非常适合小型数据库。 “不创建任何 URL”不清楚,可以从代码示例中受益。 -
你使用的是自定义php还是一些php框架?
-
@ceejayoz - 我认为问题在于结果需要永久链接,因此查询需要是可重复的。如果数据库支持 RNG 的播种功能,那可能是一种选择。
-
@ceejayoz 更大的数据库会有什么问题?只为兴趣
-
@Sean 要做到
ORDER BY RAND(),它必须为表中的每一行生成一个随机数。表越大,需要的时间就越多。如果它是一个十项表,它将几乎是即时的。
标签: php database random hyperlink fetch