0 Comments

广告生成与编辑操作(1)

发布于:2012-11-26  |   作者:广州网站建设  |   已聚集:人围观
广告生成与编辑操作(1)

广告生成与编辑操作的原理都是对广告代码本身的一种修改(可以把广告代码生成看作是一次没有修改内容的编辑操作),编辑后按照指定规则生成 .js后缀的广告文件。生成这个文件之后,用户就可以在自己的页面中嵌入调用代码,实现广告发布及内容管理。广州网站设计

1.广告生成

下面请看广告生成是如何实现的。具体的代码如下:

广州网站设计
  1. include_once(dirname(__FILE__)."/inc/include.smarty.php");    
  2.                                                     //加载Smarty配置文件  
  3. include(dirname(__FILE__). "/inc/include.function.php");    //加载函数库文件  
  4. require(dirname(__FILE__)."/config/config.php");            //加载容配置文件  
  5. $id=$_REQUEST[id];  
  6. $nx=$_REQUEST[nx];  
  7. $notice=$_REQUEST[notice];  
  8. $data=$_REQUEST[data];  
  9. $gge=$_REQUEST[gge];  
  10. $alljs=$_REQUEST[alljs];  
  11. /*批量生成JS*/  
  12. if($_REQUEST[action]=="makejs"){                            //获得动作类型  
  13. echo "<xmp>";  
  14. $msg="";   
  15. $echoid="";    
  16. $tmp=explode("|www_allen|",file_get_contents($dbtable));    //截取字符串  
  17. $len=count($tmp);        
  18. //取得列数  
  19. /*所有JS */  
  20.  if($alljs){  
  21.     for($i=0;$i<$len;$i++){  
  22.     $tmp[$i] = trim($tmp[$i]);  
  23.     if($tmp[$i] == "") continue;  
  24.     $info=explode("|allen|",$tmp[$i]);                      //切割字符串数组  
  25.     $echoid.="$addata/$info[0].js <br>";  
  26.     if($info[1]=="纯HTML"){  
  27.     $data=allen_thu($info[2]);                  //执行正则表达式的搜索和替换  
  28.     allen_file($data,"$addata/$info[0].js");  
  29.     }else{  
  30.     allen_file($info[2],"$addata/$info[0].js");  
  31.     }  
  32.  }  
  33.  }else{  
  34.     for($i=0;$i<$len;$i++){  
  35.     $tmp[$i] = trim($tmp[$i]);  
  36.     if($tmp[$i] == "") continue;  
  37.     $info=explode("|allen|",$tmp[$i]);                  //切割字符串数组  
  38.     /*JS的ID*/  
  39.     $tcount=count($_REQUEST['idjs']);                   //计算idjs条数  
  40.     for($j=0;$j<=$tcount;$j++){  
  41.         $idjs=$_REQUEST['idjs'][$j];  
  42.         echo "$idjs\n";  
  43.             if($info[0]==$idjs){    
  44.                 $echoid.="$addata/$info[0].js <br>";  
  45.                     if($info[1]=="纯HTML"){  
  46.                         $data=allen_thu($info[2]);  
  47.                         allen_file($data,"$addata/$info[0].js");  
  48.                         }else{  
  49.                         allen_file($info[2],"$addata/$info[0].js");  
  50.                         }  
  51.             }  
  52.         }  
  53.     }  
  54. }  
  55. isok("生成以下ID的JS成功:<p>$echoid");  
  56. }  

【代码解读】

程序首先判断操作的类型action="makejs"代表生成对应的JS广告文件,还有一个作用就是,通过操作的类型来实现程序的流程控制,区分生成和修改的业务代码。判断操作代码如下:

广州网站建设
  1. if($_REQUEST[action]=="makejs"){  
  2.     //生成JS文件代码  
  3. }  

 

生成的文件的代码如下:
广州网站建设
  1. allen_file($data,"$addata/$info[0].js"); 

上述代码中,allen_file()函数是在公共函数库中创建的,用来生成指定文件的函数。在广告列表页面选择要生成的广告条项目,单击"生成选定Js"按钮完成生成任务,效果如图15.11所示。

通过之前的程序执行流程了解到,广告代码会生成对应的一个对应.js后缀的文件,保存到根目录中的js文件夹中。打开这个文件夹,预览效果如图15.12所示。

标签:
飞机