一個簡單交互的網站實例—簡易banner動態更替(六)
9. 簡易banner動態更替
不知大家有沒有發現各大網站上的標頭廣告banner,我們每次訪問這些網站時,都會看到不同的廣告圖示,或者如果你每次刷新頁面時,這些廣告banner就會不斷地隨機更替變換。 要實現這種效果雖然用javascript也可以達到(象天極網站的動態變換廣告banner就是通過調用javascript來實現的),但是如果我們用PHP的話,我們還可以結合資料庫來做資料量很大,如每日一題之類的功能。 費話少說,讓我們立即來看看如何用PHP來實現banner的動態更替功能。
簡易banner動態更替PHP檔(banner.php3):
<?
產生亂數
srand((double)microtime()*1000000);
在0和4之間取一個數位
$randval = rand(0,5);
顯示結果
echo "<a href=//gophp.heha.net/index.html><img alt=進入php的世界 border=0 src=$randval.gif></a>";
?>
我們可以發現,實現的程式非常簡單:主要是先利用srand這一初始化亂數產生器產生亂數,再調用rand函數在定義的有效範圍內來獲取其中一個隨機值,最後顯示$randval.gif各圖片banner,即0.gif、1. gif、2.gif、3.gif或4.gif。 為了便於大家理解,我將rand函數的語法及相關說明羅列如下:
rand
語法:int rand([int min], [int max]);
傳回值:整數
函數種類:數學運算
內容說明:本函數用來取得隨機值。 若沒有指定亂數的最大及最小範圍,本函數會自動地從0到RAND_MAX中取一個亂數。 若有指定min及max的參數,則從指定參數中取一數位。 例如rand(38,49)則會從38到49之間取得一個隨機值。 其中UNIX系統包含49,Win32系統不包含49。 值得注意的是為了使亂數的隨機率最大,每次在取亂數前最好使用srand()來設定新的亂數。 在本例中在用srand()來產生新的亂數時加入了時間因素,執行時以百萬分之一的隨機率來產生亂數
9.1 我們更改head.inc檔以應用該簡易banner動態更替功能,同時還得為不同的廣告banner連結到它們對應的網址。
當然,首先我們必須先準備好用於更換交換的banner圖示,同時也給我們的頁面標頭加上自己網站的徽標(01DC.gif)。
新的標標頭檔(header.inc):
<?
// 定義通用頁面頭部
?>
<HTML>
<HEAD>
<TITLE> <? echo "$MySiteName - $title"; ?> </TITLE>
<style type="text/css">
<!--
.text { font-family: "宋體"; font-size: 12pt; color: #006633; text-decoration: none}
-->
</style>
</HEAD>
<body topmargin=2>
<table width="100%" border="0">
<tr>
<td rowspan="3" width="19%"><img src="HTTP://gophp.heha.net/test/images/01dc.gif" width="140" height=" 60"></td>
<td rowspan="3" width="29%">
<?
//取得亂數種子
srand((double)microtime()*1000000);
//在0和4之間取一個數位
$randval = rand(0,5);
// 顯示結果
switch($randval)
{
case "0";
echo "<a href=//gophp.heha.net/index.html><img border=0 src=$randval.gif></a>";
break;
case "1";
echo "<a href=//personal.668.cc/haitang/index.htm><img border=0 src=$randval.gif></a>";
break;
case "2";
echo "<a href=//gophp.heha.net/index.html><img border=0 src=$randval.gif></a>";
break;
case "3";
echo "<a href=//gophp.heha.net/index.html><img border=0 src=$randval.gif></a>";
break;
case "4";
echo "<a href=//personal.668.cc/haitang/index.htm><img border=0 src=$randval.gif></a>";
break;
}
?>
</td>
<td width="52%">
<div align="center"><a href=".. /test/form.php3" class="text">自動發送郵件測試</a></div>
</td>
</tr>
<tr>
<td width="52%">
<div align="center"><a href=".. /test/php/php1.php3" class="text">簡易輪回廣告更替</a></div>
</td>
</tr>
<tr>
<td width="52%">
<div align="center"><a href=".. /password/password.php3" class="text">簡易密碼驗證實例</a></div>
</td>
</tr>
</table>
<hr color="#ff9900" size="4">
</body>
</html>