广

PHP编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    用PHP实现小型站点广告管理(修正版)

    2018-09-28 15:13:57 次阅读 稿源:互联网
    零七广告
    今天做照着例子做,发现其中有很多错误的地方,为了让广大菜鸟兄弟更好的理解,我把修改后的文件给大家看看。
    数据结构如下:

    CREATE TABLE ad (
    url varchar(100) NOT NULL,
    banner varchar(150) NOT NULL,
    alt varchar(100),
    priority int(4) DEFAULT '1' NOT NULL,
    )  

    增加广告的文件
    ***************putad.php********************

    <? if($submit){
        //处理表单数据的PHP程序;
             //图片banner名和链接地址不能为空;
        if (( banner!="") & ( url!="")) {
        //若广告链接和图片名已被使用,必须另选;
        if (file_exists("adbanner/". $banner_name)) {
        echo "广告图片. banner_name.已被使用,请另选!";
        exit;
        };
        //上传链接图片文件名到adbanner目录;
        copy( $banner,"adbanner/". $banner_name);
       //连接MySQL数据库;
        include("config.inc");
       //向数据表ad中插入来自于表单的新数据;
        $query="insert into ad (url, alt, priority, banner) values('$url','$alt','$priority','$banner_name')";
       //插入成功则显示以下信息;
        $try=mysql_query($query);
       if($try){
       echo "一条广告新增完成,详细信息:";
       echo "";
       echo "广告网址:  $url
    广告链接说明: $alt
    显示加权:  $priority ";
        }else{echo "出错";}
        }
        }else{
        ?>
    <html>
    <head>
            <title>Untitled</title>
    </head>

    <body bgcolor="#ffffff">
    <p>广告交换表</p>

    <form method="post" action="putad.php" enctype="multipart/form-data">
      <p>图 片 URL:
        <input type="file" name="banner">
      </p>
      <p>连接 URL:
        <input type="text" name="url">
    </p>
      <p>显示权数:
        <input type="text" name="priority"></p>
    <p>连接说明:
        <input type="text" name="alt">

      </p>

    <p>
        <input type="submit" name="submit" value="确定">
        <input type="reset" name="concel" value="重填">
      </p>
    </form>
    </body>
    </html> <?}?>

    ***************showad.php********************


    <?
         include("config.inc");
         $query="SELECT url, banner, alt, priority from ad";
         $result=mysql_query($query);
         $numrows=mysql_num_rows($result);
       //使用mysql_fetch_object()函数获取有用的列信息并存到相应数组中;
        while($row = mysql_fetch_object($result)) {
         $adurl[]=$row->url;
         $adbanner[]=$row->banner;
         $adalt[]=$row->alt;
         $adpriority[]=$row->priority;
        }
        //初始化中间变量;
         $numcheck=$numrows;
         $i=$pricount=0;
        //得到最大随机数;
        while($numcheck) {
         $pricount+=$adpriority[$i];
         $i++; $numcheck--;
       }
       //程序执行时的百万分之一秒产生随机数种子;
       srand((double)microtime()*1000000);
       //得到1到最大随机数之间的一个随机数;
        $pri= rand(1,$pricount);
       //中间变量清零;
         $pricount=0;
        //按加权值不同,产生用来显示广告的、元素为字串的数组;
        for($i=0;$i<$numrows;$i++) {
         $pricount+=$adpriority[$i];
        if ($pri<=$pricount) {
         $ad[]="<a href=$adurl[$i]><img src=adbanner/$adbanner[$i] alt=$adalt[$i] border=0></a>";
        }
        }
        //显示广告,权值越大,显示机会越大;
        echo  $ad[0];
        ?>


    注释:其中config.inc里面就是连接mysql数据库的东西,在这就不列出来了。上面的程式还有改进空间,还有好多功能没实现,如果你愿意你也可以修改。不过修改后最好给一份给我:terence611005@sina.com
    有问题请和我联系:oicq:18680986  

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告