【问题标题】:Random URL redirect using PHP and MySQL使用 PHP 和 MySQL 的随机 URL 重定向
【发布时间】:2013-05-09 07:06:18
【问题描述】:

我有一个关于向我的网站添加链接的问题,当“点击”该链接时,用户会转到存储在我的 MySQL 数据库中的随机 URL。

我的数据库标题为“电影”,我希望能够让用户点击一个链接,它会将他们发送到存储在我的数据库中的电影页面 URL 之一。

EX:用户单击“随机”链接并从我的数据库中转到电影页面(我列出了大约 110 个带有唯一 ID 的 URL)。

我会使用类似的东西吗:

  • header('位置:'xxxxx);

要做到这一点?

我知道我应该能够使用 PHP 来完成这项任务,但我只是无法弄清楚这一点。任何帮助都会很棒!谢谢。

【问题讨论】:

  • 你有没有尝试实现任何东西?如果是这样,您尝试过什么?您在哪里遇到问题?
  • 是的,header() 调用是您可以重定向的一种方式。
  • $query = ("SELECT * FROM movie ORDER BY RAND() LIMIT 0, 10");
  • 我正在使用此查询将电影随机添加到主页,但我不知道如何将它们重定向到另一个页面
  • 有没有办法在 header() 中以某种方式使用它,并让它从数据库中随机选择?

标签: php mysql database random


【解决方案1】:

我假设您发布的查询选择了一部随机电影,并且存储 url 的字段称为“url”。

$result = mysql_query("SELECT url FROM movie ORDER BY RAND() LIMIT 0, 10")
                  or die(mysql_error());

$row = mysql_fetch_assoc($result);
mysql_free_result($result);
header('Location: '.$row['url']);

这应该重定向到数据库中的 url。

【讨论】:

    【解决方案2】:

    试试这个:

    mt_rand("", ""); // this creates random numbers and use it in a variable as:
    $id= mt_rand("1", "110");
    // hatever id number is generated it will put out that one in the query but it is only for one if you want multiple put $id in a for loop  than print the result in while loop.
    $result = mysql_query("SELECT url FROM movie WHERE id= '$id' LIMIT 0, 10")
                      or die(mysql_error());
    
    $row = mysql_fetch_assoc($result);
    mysql_free_result($result);
    header('Location: '.$row['url']);
    

    【讨论】:

    • 我很抱歉,但我对 PHP 还是很陌生,想知道如何在我的 HTML 代码中实现它。所以,我可以使用它来生成一个随机 URL,但是我如何将它实现到我的 HTML 代码中,以便当用户单击 时,他们将被带到这个随机页面?
    • 也许我不熟悉正确的术语来解决我的问题?你的答案看起来应该可以工作......
    • 嗯,首先你应该澄清这一点,你想要一个指向这个页面的单个链接,该页面显示来自数据库的随机电影?另一件事是,“或者你想从数据库中显示一些随机电影,而用户会从输出中选择一部电影?”那么我可以更具体。
    • 第一个是正确的。我想要一个链接,该链接指向一个页面,该页面显示数据库中的一部随机电影。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多