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


Posted in PHP onOctober 09, 2006

今天做照着例子做,发现其中有很多错误的地方,为了让广大菜鸟兄弟更好的理解,我把修改后的文件给大家看看。
数据结构如下:

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  

PHP 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
PHP 字符串分割和比较
Oct 06 PHP
PHP禁止页面缓存的代码
Oct 23 PHP
解析ajax事件的调用顺序
Jun 17 PHP
利用PHP fsockopen 模拟POST/GET传送数据的方法
Sep 22 PHP
浅谈PHP中的
Apr 23 PHP
PHP设计模式之迭代器模式
Jun 17 PHP
php is_writable判断文件是否可写实例代码
Oct 13 PHP
PHP对称加密函数实现数据的加密解密
Oct 27 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
Jun 09 PHP
laravel高级的Join语法详解以及使用Join多个条件
Oct 16 PHP
PHP pthreads v3下worker和pool的使用方法示例
Feb 21 PHP
BBS(php &amp; mysql)完整版(二)
Oct 09 #PHP
BBS(php &amp; mysql)完整版(三)
Oct 09 #PHP
将数字格式的计算结果转为汉字格式
Oct 09 #PHP
透析PHP的配置文件php.ini
Oct 09 #PHP
一个简单的自动发送邮件系统(三)
Oct 09 #PHP
一个简单的自动发送邮件系统(一)
Oct 09 #PHP
一个简单的自动发送邮件系统(二)
Oct 09 #PHP
You might like
《魔兽争霸3:重制版》翻车了?你想要的我们都没有
2019/11/07 魔兽争霸
PHP取余函数介绍MOD(x,y)与x%y
2014/05/15 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
Zend Framework教程之Autoloading用法详解
2016/03/08 PHP
php关闭warning问题的解决方法
2016/05/17 PHP
Yii CFileCache 获取不到值的原因分析
2017/02/08 PHP
javascript通过class来获取元素实现代码
2013/02/20 Javascript
jqgrid 表格数据导出实例
2013/11/21 Javascript
解析页面加载与js函数的执行 onload or ready
2013/12/12 Javascript
巧用jquery解决下拉菜单被Div遮挡的相关问题
2014/02/13 Javascript
js取得html iframe中的元素和变量值
2014/06/30 Javascript
微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换
2016/11/25 Javascript
微信小程序 常见问题总结(4058,40013)及解决办法
2017/01/11 Javascript
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
ES6扩展运算符的用途实例详解
2017/08/20 Javascript
详解Node使用Puppeteer完成一次复杂的爬虫
2018/04/18 Javascript
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
python算法学习之基数排序实例
2013/12/18 Python
Python简单连接MongoDB数据库的方法
2016/03/15 Python
简单谈谈python基本数据类型
2018/09/26 Python
django解决跨域请求的问题详解
2019/01/20 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
Pytorch实现WGAN用于动漫头像生成
2021/03/04 Python
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
2013/02/04 HTML / CSS
新奇的小玩意:IWOOT
2016/07/21 全球购物
英国计算机商店:Technextday
2019/12/28 全球购物
德国玩具商店:Planet Happy DE
2021/01/16 全球购物
医生实习工作总结的自我评价
2013/09/27 职场文书
个人近期表现材料
2014/02/11 职场文书
土木工程求职信
2014/05/29 职场文书
农村门前三包责任书
2014/07/25 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书
鸟的天堂导游词
2015/01/31 职场文书
读《教育心理学》心得体会
2016/01/22 职场文书
alibaba seata服务端具体实现
2022/02/24 Java/Android
我们认为中短波广播场强仪的最佳组合
2022/04/05 无线电