当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP新手上路(十) 简易banner动态更替

PHP
PHP memcache扩展的三种安装方法
PHP 判断常量,变量和函数是否存在
PHP session有效期问题
PHP 读取文件的正确方法
apache2.2.4+mysql5.0.77+php5.2.8安装精简
PHP 字符串编码截取函数(兼容utf-8和gb2312)
PHP 错误之引号中使用变量
php 购物车的例子
PHP 身份证号验证函数
php结合飞信 免费天气预报短信
PHP SQLite类
PHP 在线翻译函数代码
PHPMyAdmin 快速配置方法
PHP 编写的 25个游戏脚本
php 购物车实例(申精)
PHP获取当前文件所在目录 getcwd()函数
DISCUZ 论坛管理员密码忘记的解决方法
PHP 采集心得技巧
抓取YAHOO股票报价的类
PHP 模拟登陆MSN并获得用户信息

PHP新手上路(十) 简易banner动态更替


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 154 ::
收藏到网摘: n/a

建设一个简单交互的网站(六)

 

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>