随机图像背景变化 PHP CSS
Random image background change PHP CSS
我设置了一个背景更改脚本,它在我的其他一个网站上运行良好,当我尝试在这个新网站上运行时 (http://bit.ly/1Hwbn94),它只显示第一个背景图像并且不会每 20 秒随机更改一次(在单击另一页后)。
我是不是把 PHP 代码搞砸了?到目前为止我找不到错误。也许我必须在 header.php?
中添加一些内容
PHP random_img.php
中的代码
<?php
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); // HTTP/1.0
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header('Content-Type: image/jpeg');
$bilder = glob( "../showcase/images/*.jpg" );
$seed = floor(time()/20);
srand($seed);
$random_image = $bilder[rand(0, count($result)-1)];
header('Location:'.$random_image.'');
?>
CSS代码
body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
background: url("../random_img.php") no-repeat top left fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-attachment: fixed;
}
这一行 $result
未定义
$random_image = $bilder[rand(0, count($result)-1)];
正确
$random_image = $bilder[rand(0, count($bilder)-1)];
问题可能出在 CSS 的缓存上。
试试你的 CSS
background: url("../random_img.php?nocache=1") no-repeat top left fixed;
此致...
尝试这样做,后台可能会发生 php 错误,如果您将 headers 设置为 image/jpeg,您将无法看到该错误。删除所有自定义 headers 并在同一目录的 php 文件中尝试以下代码,看看是否有任何错误。
$bilder = glob( "../showcase/images/*.jpg" );
$seed = floor(time()/20);
srand($seed);
$random_image = $bilder[rand(0, count($bilder)-1)];
echo $random_image;
如果所有设置都正确,您的图像位于正确的目录中,您应该会看到所选图像的字符串。
我设置了一个背景更改脚本,它在我的其他一个网站上运行良好,当我尝试在这个新网站上运行时 (http://bit.ly/1Hwbn94),它只显示第一个背景图像并且不会每 20 秒随机更改一次(在单击另一页后)。
我是不是把 PHP 代码搞砸了?到目前为止我找不到错误。也许我必须在 header.php?
中添加一些内容PHP random_img.php
中的代码<?php
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); // HTTP/1.0
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header('Content-Type: image/jpeg');
$bilder = glob( "../showcase/images/*.jpg" );
$seed = floor(time()/20);
srand($seed);
$random_image = $bilder[rand(0, count($result)-1)];
header('Location:'.$random_image.'');
?>
CSS代码
body {
width: 100%;
height: 100%;
margin: 0;
padding: 0;
background: url("../random_img.php") no-repeat top left fixed; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; background-attachment: fixed;
}
这一行 $result
未定义
$random_image = $bilder[rand(0, count($result)-1)];
正确
$random_image = $bilder[rand(0, count($bilder)-1)];
问题可能出在 CSS 的缓存上。
试试你的 CSS
background: url("../random_img.php?nocache=1") no-repeat top left fixed;
此致...
尝试这样做,后台可能会发生 php 错误,如果您将 headers 设置为 image/jpeg,您将无法看到该错误。删除所有自定义 headers 并在同一目录的 php 文件中尝试以下代码,看看是否有任何错误。
$bilder = glob( "../showcase/images/*.jpg" );
$seed = floor(time()/20);
srand($seed);
$random_image = $bilder[rand(0, count($bilder)-1)];
echo $random_image;
如果所有设置都正确,您的图像位于正确的目录中,您应该会看到所选图像的字符串。