我有一个网站,我想为页面随机选择一个背景图像。该图像应保存在 session 变量中,直到浏览器关闭。目前每次页面刷新随机函数都会被一次又一次地调用,但它应该留在 session 中。那么,如何使用 drupal 或通常的 php 将背景图像保存到浏览器 session 中,直到浏览器关闭?
这里是在每个页面调用的代码加载随机函数。
<div id="page" style="background: url('/sites/all/themes/klickers/css/images/bgtop-0<?php echo rand(1, 4); ?>.jpg') no-repeat 50% 0 #000000;" class="<?php print $classes; ?>">
最佳答案
像这样的东西就可以了
<?php
session_set_cookie_params(0); // this will ensure your session destroys when browser is closed
session_start();
if(!isset($_SESSION['bgImage'])) {
$bgImage = rand(1, 4);
$_SESSION['bgImage'] = $bgImage;
}
?>
<div id="page" style="background: url('/sites/all/themes/klickers/css/images/bgtop-0<?php echo $_SESSION['bgImage']; ?>.jpg') no-repeat 50% 0 #000000;" class="<?php print $classes; ?>">
已编辑
添加了session_set_cookie_params(0);
关于php - 在 Drupal session 中保存背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17766329/