建設一個簡單交互的網站(六)
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>