每次用户刷新页面时,我都会尝试显示随机横幅。我面临的问题是我不希望再次显示最后一个横幅。我有没有其他方法可以记住最后显示的一个而不使用cookie或数据库实现?
Cookie实施:
<?php
$randIndex = rand(1,6);
if(!isset($_COOKIE["lastDispalyed"])){
setcookie("lastDispalyed",$randIndex,time()+60*60*24);
}
else{
while($_COOKIE["lastDispalyed"] == $randIndex){
$randIndex = rand(1,6);
}
setcookie("lastDispalyed",$randIndex,time()+60*60*24);
} ?>
<img src="images/mainBanners/<?php echo $randIndex; ?>.JPG"/>
答案 0 :(得分:2)
您可以使用会话变量:
<?php
session_start(); // <-- start session before outputting any HTML
$randIndex = rand(1,6);
if (!isset($_SESSION["lastDisplayed"])) {
$_SESSION["lastDisplayed"] = $randIndex;
} else {
while ($_SESSION["lastDisplayed"] == $randIndex) {
$randIndex = rand(1,6);
}
$_SESSION["lastDisplayed"] = $randIndex;
}
?>
答案 1 :(得分:0)
为横幅的ID或网址设置会话变量:
$_SESSION['lastDisplayed'] = $id; //could be the id of the banner you are displaying, or the file's url, whatever you have access too
然后在显示新横幅时进行测试。