• 广告位及广告设计及代码实现


    以下为表结构

    1. ad_position 广告位
    字段 类型 Null/默认 注释
    position_id tinyint(3) 否/ 广告位自增id
    position_name varchar(60) 否/ 广告位名称
    ad_width smallint(5) 否/0 广告位宽度
    ad_height smallint(5) 否/0 广告高度
    position_desc varchar(255) 否/ 广告位描述
    position_style text 否/ 广告位模板代码
    CREATE TABLE `ecs_ad_position` (
    `position_id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
      `position_name` varchar(60) NOT NULL DEFAULT '',
      `ad_width` smallint(5) unsigned NOT NULL DEFAULT '0',
      `ad_height` smallint(5) unsigned NOT NULL DEFAULT '0',
      `position_desc` varchar(255) NOT NULL DEFAULT '',
      `position_style` text NOT NULL,
      PRIMARY KEY (`position_id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    
    1. ad 广告表
    字段 类型 Null/默认 注释
    ad_id smallint(5) 否/ 自增ID号
    position_id smallint(5) 否/0 0,站外广告;从1开始代表的是该广告所处的广告位,同表ad_postition中的字段position_id的值
    media_type tinyint(3) 否/0 广告类型,0图片;1flash;2代码3文字
    ad_name varchar(60) 否/ 该条广告记录的广告名称
    ad_link varchar(255) 否/ 广告链接地址
    ad_code text 否/ 广告链接的表现,文字广告就是文字或图片和flash就是它们的地址
    start_time int(11) 否/0 广告开始时间
    end_time int(11) 否/0 广告结速时间
    link_man varchar(60) 否/ 广告联系人
    link_email varchar(60) 否/ 广告联系人的邮箱
    link_phone varchar(60) 否/ 广告联系人的电话
    click_count mediumint(8) 否/0 该广告点击数
    enabled tinyint(3) 否/1 该广告是否关闭;1开启;0关闭;关闭后广告将不再有效
    CREATE TABLE `ecs_ad` (
      `ad_id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
      `position_id` smallint(5) unsigned NOT NULL DEFAULT '0',
      `media_type` tinyint(3) unsigned NOT NULL DEFAULT '0',
      `ad_name` varchar(60) NOT NULL DEFAULT '',
      `ad_link` varchar(255) NOT NULL DEFAULT '',
      `ad_code` text NOT NULL,
      `start_time` int(11) NOT NULL DEFAULT '0',
      `end_time` int(11) NOT NULL DEFAULT '0',
      `link_man` varchar(60) NOT NULL DEFAULT '',
      `link_email` varchar(60) NOT NULL DEFAULT '',
      `link_phone` varchar(60) NOT NULL DEFAULT '',
      `click_count` mediumint(8) unsigned NOT NULL DEFAULT '0',
      `enabled` tinyint(3) unsigned NOT NULL DEFAULT '1' COMMENT '显示',
      PRIMARY KEY (`ad_id`),
      KEY `position_id` (`position_id`),
      KEY `enabled` (`enabled`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
    

    php代码 Thinkphp 3.2实现

    /**
     * 获取广告位中的广告
     * @param $position 广告位
     * @param int $num 广告数量
     * @return mixed    广告列表
     */
    function getAdList($position, $num = 1)
    {
        // $where = array('id' => $position, );
        //$adPosition = M("AdvertisingPosition")->where($where)->getField('advertising_id');
        //$map['position'] = array('eq',$adPosition);
        $map['position'] = array('eq', $position);
        $map['start_time'] = array('lt', time());
        $map['end_time'] = array('gt', time());
        $ad_list = M("Advertising")->where($map)->limit($num)->order('sort desc')->select();
        return $ad_list;
    }
    
  • 相关阅读:
    lms框架服务注册中心
    lms框架应用服务接口和服务条目详解
    lms框架模块详解
    lms微服务框架主机介绍
    lms框架分布式事务使用简介
    MySQL锁总结
    VSCode 输出 java SSL 请求过程
    PowerShell自动化发布SpringBoot项目到Tomcat
    AWS EC2 使用---安装Docker和Nginx
    使用PowerShell连接到Linux
  • 原文地址:https://www.cnblogs.com/fuqian/p/11736971.html
Copyright © 2020-2023  润新知