2017-06-28 7 views
0

今、私はページがリロードされるたびに乱数を生成します。私はその番号を使って自分のウェブサイトの背景イメージを変更します。x時間分の乱数を保持する

すべてのページのリロードが多すぎますx分ごとに番号を変更できるようにするにはどうすればよいですか?今、私のヘッダー内の

コードは本当に簡単..です

$randombg = rand(1,29); 

echo '<style type="text/css"> 
<!-- 
#header-container{ 
background: url(images/header-bg' . $randombg . '.jpg) 50% 0; 
} 
--> 
</style>'; 
+0

セッション変数を追加します。時間が経過すると、新しいイメージを作成し、セッション変数を更新します。 –

+0

代替として、5または10ページの変更ごとに背景を変更することができます。 – rossum

答えて

1

はあなたがあまりにもセッションでBG num個の変数を格納する必要があり、また、最後randの呼び出しからの経過時間を追跡するためにセッション変数を追加します。 :

if (!isset($_SESSION['bg_expire_time']) || $_SESSION['bg_expire_time'] < time()) { 
    $_SESSION['bg'] = rand(1, 29); 
    $_SESSION['bg_expire_time'] = time() + 180; // + 3 minutes 
} 

echo '<style type="text/css"> 
<!-- 
#header-container{ 
background: url(images/header-bg' . $_SESSION['bg'] . '.jpg) 50% 0; 
} 
--> 
</style>'; 

もちろん、session_start()でセッションを開始することを忘れないでください。

関連する問題