欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Banner程序

程序员文章站 2022-05-26 23:21:09
<?php  
/* 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]" );  

?>