來源:互聯網
上載者:User
關鍵字
網站
互動
簡單
一個
建設
隨機
banner
href
建設一個簡單互動的網站(六)
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 "href=//gophp.heha.net/index.html>進入php的世界 border=0 src=$randval.gif>";
?>
我們可以發現,實現的程式非常簡單:主要是先利用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):
// 定義通用頁面頭部
?>
<? echo "$<SPAN class=SpellE>MySiteName</sPAN> - $title"; ?>
topmargin=2>
tr
tr
tr
<>
rowspan="3" width="19%"><img src="http://gophp.heha.net/test/images/01dc.gif" width="140" height="60"> |
rowspan="3" width="29%"> //取得亂數種子 srand((double)microtime()*1000000); //在0和4之間取一個數字 $randval = rand(0,5); // 顯示結果 switch($randval) { case "0"; echo "href=//gophp.heha.net/index.html>src=$randval.gif>"; break; case "1"; echo "href=//personal.668.cc/haitang/index.htm><img border=0 src=$randval.gif>"; break; case "2"; echo "href=//gophp.heha.net/index.html>src=$randval.gif>"; break; case "3"; echo "href=//gophp.heha.net/index.html>src=$randval.gif>"; break; case "4"; echo "href=//personal.668.cc/haitang/index.htm><img border=0 src=$randval.gif>"; break; } ?>
|
href="../test/form.php3" class="text">自動發送郵件測試
| tr><>
href="../test/php/php1.php3" class="text">簡易輪迴廣告更替
| tr><>
href="../password/password.php3" class="text">簡易密碼驗證執行個體
| tr>