/* banner.php
;;;;;这个PHP3的滚动程序是由 Anton Olsen ( aolsen@graphweb.com )设计的,你可以自由地修改和使用这个程序,并自由地传播它,如果你对它有了比较重要的修改,请你给作都写份E-Mail。
;;;;在这个程序中,作者试图通过多种不同的方法来实现这个功能,但PHP中的图像函数不能显示动画的GIF图片格式及对这种格式的操作(如:fopen, fpassthru, 和 fclose)。作者通过了passthru方法来加以实现,虽然这并不是一种最好的方法,但它可以比别的方法更加快速地显示广告条。
在这个程序中,我们假设:
;;;;1、你已经有了一个存放所有的广告图片的目录。
;;;;2、所有的广告图片都是GIF格式的。
;;;;3、所有的GIF图片都是以banner开头的。
;;;;3、在这个目录中没有其它的除了广告图片的文件。
安装这个程序:
;;;;1、把这个程序和所有的广告图片(*.GIF)放到一个目录中。
;;;;2、把以下这段HTML代码放在你的WEB页面中:
;;;;;<a href="wherever.you.want.com">;;
;;;;;<img src="http://www.yourserver.com/bannerdir/banner.phtml" alt="Random Banner Here" border=0>;;
;;;;</a>;;
4/14/2000;;;;Mouse Chen( litmouse@km169.net;;;);;;;Translate it to Chinese
*/;;
/* random( $max integer );;
;;;返回一个从 0到 $max-1的随机数;;;
*/;;
function random( $max );;
{;;
$x = rand();;;
$y = getrandmax();;;
$r = $x / $y * ($max -1 );;;
$r = round( $r++ );;;
return $r;;;
};;
/*读取目录,把所有的 “banner*”的文件读到一个数组中;*/;;
$i = 0;;;
$d;;;= dir( ".");;;
while($entry=$d->read());;
if (substr($entry,0,6) ==;;"banner");;
$array[$i++] = $entry;;;
$d->close();;;
;;
/* 选取一个随机数 */;;
$r = random( $i );;;
/* 发送一个 no-cache 和 gif 类型的文件头,并且输出图片。*/;;
Header(;;"Pragma: no-cache" );;;
Header(;;"Expires: Monday 01-Jan-80 12:00:00 GMT" );;;
Header(;;"Content-type:;;image/gif");;;
passthru(;;"cat $array[$r]" );;;
?>;
标签: