xxx.class.php - 前台类

标准格式

注意:LOAD::sys_class('webbase');

前台打开index类的index方法的请求地址为 /app/index.php?rootid=0&n=YOURAPP&c=index&a=index

小技巧:如果做小程序等API接口需要记住用户登录状态的时候,请求地址里加上rootsid参数,传入唯一用户编码,即可在API中使用SESSION功能。

参数说明
rootidSaaS模式下后台用户的ID
roosid可选,自定义SEESION_ID,此参数可实现API中使用SESSION功能
n你的APP的目录名称
c类文件名,对应index.class.php文件
a类中发方法名,对应doindex方法
<?php
defined('IN_LCMS') or exit('No permission');
load::sys_class('webbase');
class index extends webbase
{
    public function __construct()
    {
        global $_L;
        parent::__construct();
    }
    public function doindex()
    {
        global $_L;
    }
}

特别注意

前台请求的GET和POST参数名和参数值会进行安全过滤和转义,通过$_L['form']变量读取数据,规则如下:

参数名过滤规则

参数名只能包含字母、数字、_-(即正则[a-zA-Z0-9_-]),不符合的会被直接删除。

参数值过滤规则

第一步:判断参数值是否只包含字母、数字、_-(即正则[a-zA-Z0-9_-]),如果是则不进行过滤,如果不是进行下一步过滤;

第二步:对参数进行htmlspecialchars编码(如果程序里需要读被编码前的数据只需要htmlspecialchars_decode一下即可);

第二步:对参数中的以下字符串再次进行Unicode编码(程序里读数据一般不用再次处理)。

\,*,%5C,%22,%27,create,select,insert,update,delete,union,into,alter,truncate,drop,load_file,outfile,sleep,/script,script,eval,document


大纲