PHP随机显示一个链接

有100+链接,格式如下:

<a href="#">title</a>
<a href="#">title</a>
<a href="#">title</a>
<a href="#">title</a>

需要随机在页面上显示一条,如果能有时间限制更好,比如:每分钟切换,一分钟内刷新不变。

请帮忙写完整的代码,谢谢!

<?php
 $url_arr=array('<a href="#">title</a>','<a href="#">title</a>','<a href="#">title</a>','<a href="#">title</a>','<a href="#">title</a>','<a href="#">title</a>');
$rand_num=mt_rand(0,count($url_arr)-1);//随机去1条url
if(!isset($_COOKIE["url"]) || $_COOKIE["url"]==''){
setcookie("ur", $url_arr[$rand_num], time()+60);//设置1分钟过期
$url=$url_arr[$rand_num];
}
else{
$url=$_COOKIE["url"];
}
echo ;$url
?>

假设你已经搭建好了这100个页面,名字是1.html,2,html.....100.html每一个页面的内容也已经做好,只等着这个跳转页面,那么这个跳转页面代码可以这样写

img


然后你就可以每次刷新产生一个数字,点击数字就能跳转到相应的HTML上面,是不是已经解决了

为什么这么多a标签,不是只显示一条吗,设置一个a标签,设个js定时器定时更新链接不就可以么,这样应该更简洁一点,你设100+个a标签,轮流切换隐藏显示虽然也是同样效果,但是代码太臃肿了吧

1)实现思路:使用两个a链接:一个用于显示、一个隐藏
2)点击显示的a链接(用其onclick事件),然后再方法中取后台随机获取你1个链接
3)将随机获取的链接赋值给隐藏的链接,然后用触发其click事件!

<script>

function jumpUrl(){

var arr = new Array(

<?php

while($row = $result->fetch_assoc()) {//遍历数组

print('"'.$row['url'].'",');//输出数据表内的链接

}

$conn->close();

?>

);

window.location.href = arr[Math.floor(Math.random() * arr.length)];

}

setTimeout(function () {

jumpUrl();},1000);//设定跳转时间,1s=1000

</script>


把这些链接放入一个数组
然后生成一个随机数下标从数组里面取
这个随机算法控制1分钟之内返回相同的数

如有帮助,请采纳,十分感谢!