【问题标题】:Randomly select download location when clicking URL点击网址时随机选择下载位置
【发布时间】:2014-07-10 00:08:36
【问题描述】:

我们的网站现在是如何设置的,我们希望有一种方式,用户每次点击一个按钮,它就会自动选择代码中列出的随机下载位置。

例如,用户点击“下载!”。它在设置的代码中随机选择一个URL访问例如:

“website.com/blah.zip” 或者 "website2.com/blah.zip"

这可能吗?我们正在尝试通过设置两个下载位置来缓解服务器带宽,并让网站随机选择一个。

【问题讨论】:

标签: javascript html arrays


【解决方案1】:

您已标记php (server-side),这是Javascript (client-side) 的一部分

插入Download按钮时,从链接数组中随机选择一个index value

var arr = ["website.com/blah.zip", "website2.com/blah.zip"];
var len = arr.length;
var x = Math.floor((Math.random() * len) + 1);

现在将下载源更改为arr[x]

【讨论】:

    【解决方案2】:

    嗯,一个简单的方法是:

    $array = array("website.com/blah.zip", "website2.com/blah.zip");
    $val = array_rand($array);
    echo $array[$val];
    

    您可以使用任意数量的不同站点,它会从该数组中为您提供一个随机站点。

    编辑:解决 cmets 中提出的问题:

    您是否像以前一样在文件顶部设置了数组:

    $array = array("website.com/blah.zip", "website2.com/blah.zip");
    

    然后每个链接你只需要做:

    <a href="<?php echo $array[array_rand($array)]; ?>">Download</a>
    

    【讨论】:

    • 感谢代码示例!我们有一个简单的 HTML 链接设置,如下所示:
    • website.com/blahzip">DownloadBlah
    • 你知道我们将如何整合它吗?
  • 查看我的编辑。它本质上是相同的设置,但 echo 不同。
  • 您介意编辑您的帖子并重新添加 PHP 标记吗?没有它,这个答案就与问题不符。
  • 【解决方案3】:

    您可以将两个 URl 存储在一个数组中,然后像下面这样选择一个。

    $rand_key = array_rand($url_options, 1);
    echo $url_options[$rand_key];
    

    【讨论】:

      猜你喜欢
      相关资源
      最近更新 更多
      热门标签