从表中显示随机数据

时间:2012-08-22 10:20:37

标签: php mysql forms

在发布此内容之前,我已经浏览过该网站,但似乎没有任何意义。我有一个表格,可以向表格提交信息。 for有三个字段:$ name,$ link和$ itunes。 MySQL表有3列,我想随机拉一个名字,链接和itunes,并将其显示在页面上。我目前没有代码,除了提交到数据库的表单。任何帮助表示赞赏。

3 个答案:

答案 0 :(得分:4)

SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1;

这将从mysql中获取任何随机数据。

程序方式:

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT * FROM `table` ORDER BY RAND() LIMIT 0,1";

if ($result = mysqli_query($link, $query)) {

    /* fetch associative array */
    while ($row = mysqli_fetch_assoc($result)) {
        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
    }

    /* free result set */
    mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

答案 1 :(得分:1)

以下是您可能会发现有用的SQL查询:

SELECT name, link, table FROM mytable ORDER BY rand() LIMIT 1

答案 2 :(得分:0)

使用该表结构,您可以使用ORDER BY rand()但它太慢了 如果你有一个id列你可以获得最后一行(即SELECT id FROM table_name ORDER BY id DESC LIMIT 1)然后用php获取一个随机值(rand(1,$ max))然后使用select查询到通过该随机ID获取该行。你必须检查这个id实际存在以防你删除它。