php 广告调用类代码(支持Flash调用)

 更新时间:2011年08月11日 00:05:22   作者:  
php 广告调用类代码(支持Flash调用),非常方便php页面中加载广告。需要的朋友可以参考下。
调用方式如下:其中DebugStr这个函数就是类似一个echo。
复制代码 代码如下:

DebugStr('$Adv->getContentById($id); $id为广告编号, 仅调用一条,返回内容为字符串');
echo Adv::getContentById(35);
DebugStr('$Adv->getContentByIdJS($id); $id为广告编号, 仅调用一条,返回内容为JS字符串');
echo Adv::getContentByIdJS(35);
DebugStr('$Adv->getContentByOrder($id); $id为广告编号, 仅调用ID倒序一条,返回内容为字符串');
echo Adv::getContentByOrder(4);
DebugStr('$Adv->getContentByOrderJS($id); $id为广告编号, 仅调用ID倒序一条,返回内容为JS字符串');
echo Adv::getContentByOrderJS(4);
echo '<hr>';    

类如下:
复制代码 代码如下:

<?php
/**
* 说明:广告类,方便广告列表、内容的调用。
* 需要:数据库类
* 支持:仅支持PHP5,单件模式
*
* @author Zerolone
* @version 2011-1-6 11:32:06
* 调用方法
* Adv::getContentById($id); $id为广告编号, 仅调用一条,返回内容为字符串
* Adv::getContentByIdJs($id); $id为广告编号, 仅调用一条,返回内容为JS字符串
* Adv::getContentByOrder($order); $order为对应, 仅调用ID倒序一条,返回内容为字符串
* Adv::getContentByOrderJs($order); $order对应顺序, 仅调用ID倒序一条,返回内容为JS字符串
*/
class Adv {
static $Id = 0; //编号
static $Order = 0; //顺序
static $JS = 0; //是否使用JS, 0为不使用
/**
* 根据Id, 返回广告内容,仅调用一条
*
* @param 编号 $id
*
*/
public static function getContentById($id){
self::$Id = $id;
return self::getContent();
}
/**
* 根据Id, 返回广告内容Js,仅调用一条
*
* @param 编号 $id
*
*/
public static function getContentByIdJS($id){
self::$Id = $id;
self::$JS = 1;
return self::getContent();
}
/**
* 根据Order, 返回广告内容,仅调用一条
*
* @param 编号 $Order
*
*/
public static function getContentByOrder($order){
self::$Order = $order;
return self::getContent();
}
/**
* 根据Order, 返回广告内容Js,仅调用一条
*
* @param 编号 $Order
*
*/
public static function getContentByOrderJS($order){
self::$Order = $order;
self::$JS = 1;
return self::getContent();
}
/**
* 生成一个广告内容,只调用一条
*
* @return 广告内容
*/
private function getContent(){
$ReturnContent='';
//------------------0-------1--------2--------3
$SqlStr = 'SELECT `pic`, `width`, `height`, `url` FROM '.TABLE_ADV;
if(self::$Id){
$SqlStr.= ' WHERE `id`=' . self::$Id;
}else{
$SqlStr.= ' WHERE `order`=' . self::$Order;
$SqlStr.= ' ORDER BY `id` DESC ';
}
$SqlStr.= ' LIMIT 1';
$MyDatabase=Database::Get();
$MyDatabase->SqlStr = $SqlStr;
if ($MyDatabase->Query ()) {
$DB_Record = $MyDatabase->ResultArr [0];
$FileName = $DB_Record[0];
$Width = $DB_Record[1];
$Height = $DB_Record[2];
$Url = $DB_Record[3];
}
//判断类型
$FileName_Ext=strtoupper(pathinfo($FileName, PATHINFO_EXTENSION));
if ($FileName_Ext=='SWF'){
//Flash广告
$ReturnContent = '<table width="' . $Width .'" border="0" cellspacing="0" cellpadding="0">';
$ReturnContent.= '<tr>';
$ReturnContent.= '<td height="' . $Height . '">';
$ReturnContent.= '<table width="100%" border="0" cellpadding="0" cellspacing="0">';
$ReturnContent.= '<tr>';
$ReturnContent.= '<td>';
$ReturnContent.= '<div style="position:absolute; width:0px; height:0px; z-index:1">';
$ReturnContent.= '<div style="position:absolute; left:0px; top:0px; width:' . $Width . 'px; height:' . $Height . 'px; z-index:2; filter:alpha(opacity=0)">';
$ReturnContent.= '<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">';
$ReturnContent.= '<tr>';
$ReturnContent.= '<td style="cursor:hand" onClick=window.open("'. $Url . '");> </td>';
$ReturnContent.= '</tr>';
$ReturnContent.= '</table>';
$ReturnContent.= '</div>';
$ReturnContent.= '</div>';
$ReturnContent.= '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http<SPAN class=makelinks_urlspan>://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab<!--makelinks--><A class=makelinks_url title=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab style="MARGIN: 1px; VERTICAL-ALIGN: middle" href="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab" target=_blank><IMG style="FLOAT: none; MARGIN: 1px; VERTICAL-ALIGN: middle; WIDTH: 18px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 18px; BORDER-BOTTOM-STYLE: none" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPkgAAD5IBBKh+oAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANFSURBVDiNlZJLaNxVFIe/+3/OZJJMokMzxqTJOJ2kmkYbtBCxosSC0NiN0l11aUXcduNKKF0otBBcuXXhQlCkohUtSIvaSDBVqyEvjW3TxDwmk2Smmf/jPlwkMzXFLDxw+cHhnu+c+ztXGGMYGnrlmcf7jrydakp38T8iCqurt25OjXz8yQefOUtLS6nnnxv+sNBz6BEhBI7dAMDy8gz79hV2FQqh+XtxlrZsTz3XlesbmP3reLe9sLz25OCRl87M/fErm5tFWloewhjwPQfLSiAEgEFrEMT8cO0rcrkncBwbpTTJZNqfnBidc6Io8m3bvq+zYPznyxTyTzE1/SO+30CptM4LQyexLIvpqSs0pzNks30A2I7nWnu9P44ijAHHbuTw4WH8xHazUmkeIUQdUos6yLYt7sxP8tuNy9ytLOF6HkKAZdtMz1wnkfAByGS60EZw+9bYLpADUAo06439pHr7iYVg+i64+4eZi2Fm8SovHk0zsdCAvWRoefRlAgEBsLYc0pZy74FSrqA77dTpxtTMgo3mJMeODTH2y0c83OjU87V7nhCoWG+DPFvgO7sNr0WDb9Pa2kpUKaLKC7S1daK1IVYaKTWhVMRa4fxn9b9NFBaJRAIlV/lp/CLVqiTbfohstkCqKUMsQWm9N2hs7BJSlVlZWcN1XV597RSTk7P09uY5d+5d8gcO0pE7geM2E8Z7gKTStDzQSa4bLlwYoVwuMzg4yMDAAEEQcPbsO8zPz/PN1Tky2ceIJfdAShuk1EiliaWm9cEDjF//nPPn3yMIAlzXRSmF1ppstg1jNOul30mmC0i1M1E1UMTK1CE1LZZC8vkcxhjCMEQphZQSpRTpdJow2EDr7RVbIKlUYyrVmPLWtlZ2VDidjI6OEQQBYRgShiFxHCOlZGJikmRTd/2rWO0dHcurxWJc2ZLUTnlHUy09XPr6O4IgIAgCoigiiiKklHx7ZZzWzEG00kRBZUUUi8Xm02+NfJErDB2N1bbRUun6yHf+/JJnBzvxfQ/PdXE9G8e2+fTiNdrzJ1m8fWMuu/90rzDG8PqZLca/f+NNL9Hcf/8GtZJWGGwmtVaW1tKuaSKZ3nJtb7oh/fT7PX2nNv4BjlSkNxLrX2YAAAAASUVORK5CYII="></A></SPAN>#version=7,0,19,0" width="'.$Width.'" height="'.$Height.'">';
$ReturnContent.= '<param name="movie" value="'.$FileName.'">';
$ReturnContent.= '<param name="quality" value="high">';
$ReturnContent.= '<param name="wmode" value="transparent">';
$ReturnContent.= '<embed src="'.$FileName.'" quality="high" wmode="transparent" pluginspage="http<SPAN class=makelinks_urlspan>://www.macromedia.com/go/getflashplayer<!--makelinks--><A class=makelinks_url title=http://www.macromedia.com/go/getflashplayer style="MARGIN: 1px; VERTICAL-ALIGN: middle" href="http://www.macromedia.com/go/getflashplayer" target=_blank><IMG style="FLOAT: none; MARGIN: 1px; VERTICAL-ALIGN: middle; WIDTH: 18px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; HEIGHT: 18px; BORDER-BOTTOM-STYLE: none" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPkgAAD5IBBKh+oAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAANFSURBVDiNlZJLaNxVFIe/+3/OZJJMokMzxqTJOJ2kmkYbtBCxosSC0NiN0l11aUXcduNKKF0otBBcuXXhQlCkohUtSIvaSDBVqyEvjW3TxDwmk2Smmf/jPlwkMzXFLDxw+cHhnu+c+ztXGGMYGnrlmcf7jrydakp38T8iCqurt25OjXz8yQefOUtLS6nnnxv+sNBz6BEhBI7dAMDy8gz79hV2FQqh+XtxlrZsTz3XlesbmP3reLe9sLz25OCRl87M/fErm5tFWloewhjwPQfLSiAEgEFrEMT8cO0rcrkncBwbpTTJZNqfnBidc6Io8m3bvq+zYPznyxTyTzE1/SO+30CptM4LQyexLIvpqSs0pzNks30A2I7nWnu9P44ijAHHbuTw4WH8xHazUmkeIUQdUos6yLYt7sxP8tuNy9ytLOF6HkKAZdtMz1wnkfAByGS60EZw+9bYLpADUAo06439pHr7iYVg+i64+4eZi2Fm8SovHk0zsdCAvWRoefRlAgEBsLYc0pZy74FSrqA77dTpxtTMgo3mJMeODTH2y0c83OjU87V7nhCoWG+DPFvgO7sNr0WDb9Pa2kpUKaLKC7S1daK1IVYaKTWhVMRa4fxn9b9NFBaJRAIlV/lp/CLVqiTbfohstkCqKUMsQWm9N2hs7BJSlVlZWcN1XV597RSTk7P09uY5d+5d8gcO0pE7geM2E8Z7gKTStDzQSa4bLlwYoVwuMzg4yMDAAEEQcPbsO8zPz/PN1Tky2ceIJfdAShuk1EiliaWm9cEDjF//nPPn3yMIAlzXRSmF1ppstg1jNOul30mmC0i1M1E1UMTK1CE1LZZC8vkcxhjCMEQphZQSpRTpdJow2EDr7RVbIKlUYyrVmPLWtlZ2VDidjI6OEQQBYRgShiFxHCOlZGJikmRTd/2rWO0dHcurxWJc2ZLUTnlHUy09XPr6O4IgIAgCoigiiiKklHx7ZZzWzEG00kRBZUUUi8Xm02+NfJErDB2N1bbRUun6yHf+/JJnBzvxfQ/PdXE9G8e2+fTiNdrzJ1m8fWMuu/90rzDG8PqZLca/f+NNL9Hcf/8GtZJWGGwmtVaW1tKuaSKZ3nJtb7oh/fT7PX2nNv4BjlSkNxLrX2YAAAAASUVORK5CYII="></A></SPAN>" type="application/x-shockwave-flash" width="'.$Width.'" height="'.$Height.'"></embed></object>';
$ReturnContent.= '</td>';
$ReturnContent.= '</tr>';
$ReturnContent.= '</table>';
$ReturnContent.= '</td>';
$ReturnContent.= '</tr>';
$ReturnContent.= '</table>';
}else{
//图片广告
$ReturnContent = '<a target="_blank" href="'.$Url.'"><img src="'.$FileName.'" width="'.$Width.'" height="'.$Height.'" border="0" /></a>';
}
//如果为调用JS方式
if(self::$JS){
$ReturnContent = 'document.write("'.addslashes($ReturnContent).'");';
}
//重置默认值,这里还是采用单件模式
self::$Id = 0;
self::$Order = 0;
self::$JS = 0;
return $ReturnContent;
}
}
?>

相关文章

  • 使用session判断用户登录用户权限(超简单)

    使用session判断用户登录用户权限(超简单)

    本篇文章是对session判断用户登录用户权限进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php数据库中将base64图片数据转化为可访问src的方法详解

    php数据库中将base64图片数据转化为可访问src的方法详解

    后端同学在对一些老项目进行二次开发时候,可能会遇到一些小的图片以base64的方式存储在数据库中的情况,这样做的好处是这些图片数据一般不会因为项目重新部署而丢失,但是这么做也会存在一些坏处,本文给大家介绍了php数据库中base64图片数据转化可访问的src的方法
    2023-10-10
  • PHP文件与目录操作示例

    PHP文件与目录操作示例

    这篇文章主要介绍了PHP文件与目录操作,涉及php针对文件与目录的遍历、判断与排序相关操作技巧,注释中备有较为详细的说明,需要的朋友可以参考下
    2016-12-12
  • 如何使用Casbin作为ThinkPHP的权限控制中间件

    如何使用Casbin作为ThinkPHP的权限控制中间件

    本文介绍了如何使用Casbin作为ThinkPHP的权限控制中间件,感兴趣的同学,可以参考下,理解其原理。
    2021-05-05
  • PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)

    PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)

    这篇文章主要介绍了PHP查询并删除数据库多列重复数据的方法,利用数组函数实现该功能,涉及PHP数据库操作的相关技巧,需要的朋友可以参考下
    2016-02-02
  • 深入讲解PHP Session及如何保持其不过期的方法

    深入讲解PHP Session及如何保持其不过期的方法

    这篇文章主要介绍了深入讲解PHP Session及如何保持其不过期的方法,包括对Session回收机制的讲解以及SessionId保持不变的问题的解决,需要的朋友可以参考下
    2015-08-08
  • php之深入理解架构布局讲解

    php之深入理解架构布局讲解

    这篇文章主要介绍了php之深入理解架构布局讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • PHP中filter函数校验数据的方法详解

    PHP中filter函数校验数据的方法详解

    这篇文章主要是介绍PHP中filter函数校验数据的方法详解,PHP过滤器包含两种类型:Validation用来验证验证项是否合法 、Sanitization用来格式化被验证的项目,因此它可能会修改验证项的值,将不合法的字符删除,需要的朋友可以参考下
    2015-07-07
  • PHP实现SMTP邮件的发送实例

    PHP实现SMTP邮件的发送实例

    在本篇文章中我们给大家详细分享了PHP实现SMTP邮件的发送的相关实例内容,有兴趣的朋友们可以学习下。
    2018-09-09
  • 使用PHPExcel导出Excel表

    使用PHPExcel导出Excel表

    这篇文章主要为大家详细介绍了使用PHPExcel导出Excel表,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09

最新评论