PHP新手上路(十)

來源:互聯網
上載者:User

建設一個簡單互動的網站(六)

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>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.