chengkun
2025-04-24 5d55579fd424e024c52e62265b72e24c38a45004
提交
3 files modified
50 files deleted
34629 ■■■■■ changed files
.gitignore 4 ●●●● patch | view | raw | blame | history
admin/model/config.class.php 205 ●●●● patch | view | raw | blame | history
app/public/action.class.php 2287 ●●●● patch | view | raw | blame | history
data/plus/config.php 9 ●●●●● patch | view | raw | blame | history
data/templates_c/0c53cfd9620c77bb7a42c2434fc6334e7ee3fe10.file.admin_comtpl.htm.php 118 ●●●●● patch | view | raw | blame | history
data/templates_c/11c4a26fe7d1c9b502850cb82316cf562855141e.file.admin_member.htm.php 517 ●●●●● patch | view | raw | blame | history
data/templates_c/13a4aad0a34df68d47f0e3bd4cdba4250206e0d0.file.verify_js.htm.php 63 ●●●●● patch | view | raw | blame | history
data/templates_c/1c4998f09b9e4bb1ce0819e8ef1283198b6a149f.file.admin_member_comadd.htm.php 459 ●●●●● patch | view | raw | blame | history
data/templates_c/1da5f3b8d4305ec58657ab7e24ce3078930c687c.file.backtop.htm.php 75 ●●●●● patch | view | raw | blame | history
data/templates_c/244e9855ebbf46b76c35cc130280718204a203b7.file.search.htm.php 3133 ●●●●● patch | view | raw | blame | history
data/templates_c/27a6b2af0295fe23df2ef67e29eaea98bb3be36b.file.admin_user_add.htm.php 521 ●●●●● patch | view | raw | blame | history
data/templates_c/2efa76dce73e456116002b5a79988ad4ded0c1d9.file.admin_description_add.htm.php 343 ●●●●● patch | view | raw | blame | history
data/templates_c/36cfde62cc62f78020700c7a43b59208f3639d41.file.admin_makenews.htm.php 444 ●●●●● patch | view | raw | blame | history
data/templates_c/4b076adc0d40c26df5e4ec37621fc73116c60a09.file.admin_city.htm.php 493 ●●●●● patch | view | raw | blame | history
data/templates_c/55fb59665d037e88b25461324b7b6415877bf6bd.file.index.htm.php 6028 ●●●●● patch | view | raw | blame | history
data/templates_c/567fedba9f84d83f3de3f965668ecbfe009877cf.file.search.htm.php 2256 ●●●●● patch | view | raw | blame | history
data/templates_c/56ae993870cd60af1ac02627c05814bbfd30581a.file.admin_message.htm.php 285 ●●●●● patch | view | raw | blame | history
data/templates_c/59e1e0820792c5de4212c43421b7f56db2e5fe91.file.footer.htm.php 232 ●●●●● patch | view | raw | blame | history
data/templates_c/603d4de05786c50b2bf0d3d458bb5eeef4f4f0fb.file.firm_search.htm.php 521 ●●●●● patch | view | raw | blame | history
data/templates_c/643a77cfea3409d4f5b6e0a4a08a8cc5974a4320.file.admin_user_list.htm.php 173 ●●●●● patch | view | raw | blame | history
data/templates_c/680e04d273a3dd0f8ddb8679579421f092d19229.file.admin_description.htm.php 197 ●●●●● patch | view | raw | blame | history
data/templates_c/69f5b2f337040ab27e994ddeb43b3eb281388bc2.file.member_send_email.htm.php 267 ●●●●● patch | view | raw | blame | history
data/templates_c/6f71af4e84b724c5fcef767654693754e83199de.file.login.htm.php 762 ●●●●● patch | view | raw | blame | history
data/templates_c/70470c950ce5578bbbd9077ceec58382367e8dfc.file.index.htm.php 1187 ●●●●● patch | view | raw | blame | history
data/templates_c/78c0d883f755d092b66bb69b4de9fcc57fb77c19.file.admin_industry.htm.php 194 ●●●●● patch | view | raw | blame | history
data/templates_c/7c5534854000a9770ba1b00399788ddf76ce79f1.file.admin_right_web.htm.php 235 ●●●●● patch | view | raw | blame | history
data/templates_c/7fad852e220f05269cb70d35def311ecb46320e5.file.index_header.htm.php 671 ●●●●● patch | view | raw | blame | history
data/templates_c/844a7391c57137a67f3ef1e5f57351b437aa2e44.file.header.htm.php 443 ●●●●● patch | view | raw | blame | history
data/templates_c/84c393276c827b025457c7655dcc77fc4d0fe482.file.admin_style_list.htm.php 114 ●●●●● patch | view | raw | blame | history
data/templates_c/89b218e55d5ea3ef51fe5e74b1f07bf13ade6f52.file.crm_public.htm.php 785 ●●●●● patch | view | raw | blame | history
data/templates_c/8ead6a04918b6611fea3d0a9ff7ddc2c9fb7aa67.file.changeutype.htm.php 284 ●●●●● patch | view | raw | blame | history
data/templates_c/8f1992510c820a625ae20dc11cc97473e2e9506d.file.admin_news_list.htm.php 571 ●●●●● patch | view | raw | blame | history
data/templates_c/92d4cc030673bf28dc16fbc558f6fb14aea8c583.file.topfour_list.htm.php 918 ●●●●● patch | view | raw | blame | history
data/templates_c/942b1af51daf9555bfae11257fb3ff355b916d82.file.admin_web_config.htm.php 1200 ●●●●● patch | view | raw | blame | history
data/templates_c/96886e946ca00ad9425159b3b1c37256e999e16b.file.admin_descclass.htm.php 209 ●●●●● patch | view | raw | blame | history
data/templates_c/9aa269d49f5808d4c8652e385a772866e25c3c20.file.web_config.htm.php 695 ●●●●● patch | view | raw | blame | history
data/templates_c/a26ea299e121f1c6ae6868e82b35b1fa9843093e.file.checkdomain.htm.php 484 ●●●●● patch | view | raw | blame | history
data/templates_c/bbe37c552ad210165d8d711871d36cae7adc6df6.file.index.htm.php 1039 ●●●●● patch | view | raw | blame | history
data/templates_c/c06c62faa1c191544eece3fbedc66e059f2cab81.file.admin_myuser.htm.php 269 ●●●●● patch | view | raw | blame | history
data/templates_c/c32bb702ce1cfaf01d5a51b472f6d406c77b5407.file.admin_userclass.htm.php 215 ●●●●● patch | view | raw | blame | history
data/templates_c/c6b248bdf4e16306c55fe3ea3e0cc660bafb9f2f.file.admin_model_config.htm.php 254 ●●●●● patch | view | raw | blame | history
data/templates_c/cc863ec85d93dc03912af0a1f91c359543ad5131.file.admin_domain_config.htm.php 173 ●●●●● patch | view | raw | blame | history
data/templates_c/d185eb9fb3f5e0e2f2217e255a7b35b29c523c21.file.admin_right.htm.php 928 ●●●●● patch | view | raw | blame | history
data/templates_c/d5f587720e2920b8f0b3b7d7a256da2a77d4240a.file.login.htm.php 151 ●●●●● patch | view | raw | blame | history
data/templates_c/d6f831c1f0620e090932efd34d3ec6be3c06e54a.file.admin_resumetpl.htm.php 118 ●●●●● patch | view | raw | blame | history
data/templates_c/df1c9da67eefc370faf1f7d60a3e2a65a54b0759.file.admin_reward.htm.php 227 ●●●●● patch | view | raw | blame | history
data/templates_c/df324bff9cd508c18553c8a74f5c2c4f445f4a46.file.admin_company.htm.php 2220 ●●●●● patch | view | raw | blame | history
data/templates_c/e07e6d79d2f7dadaed434b33af44500b85a4b913.file.admin_search.htm.php 426 ●●●●● patch | view | raw | blame | history
data/templates_c/e81a185a5882542bcab41612413ad9e6a40b813b.file.index_search.htm.php 33 ●●●●● patch | view | raw | blame | history
data/templates_c/e8eb7d27f330b71c0eb944709c031f8cdc47c231.file.crm_index.htm.php 443 ●●●●● patch | view | raw | blame | history
data/templates_c/e986efe7bf7e5328177e4d211979c0c68efd9edd.file.login.htm.php 329 ●●●●● patch | view | raw | blame | history
data/templates_c/ea66f1685e4801c2a655bb775fbd4a9e07cb7aff.file.admin_navmap.htm.php 235 ●●●●● patch | view | raw | blame | history
data/templates_c/edf202bd6aa332c1ea343ab903fee9e0bab7e52f.file.add_class.htm.php 187 ●●●●● patch | view | raw | blame | history
.gitignore
@@ -1 +1,5 @@
.idea
/data/templates_c
templates_c
/data/plus/config.php
admin/model/config.class.php
@@ -9,32 +9,33 @@
 *
 * 软件声明:未经授权前提下,不得用于商业运营、二次开发以及任何形式的再次发布。
 */
class config_controller extends adminCommon{
class config_controller extends adminCommon {
    /**
     * 系统-网站设置
     */
    function index_action(){
        if (strpos($this->config['sy_weburl'], 'https') !== false) {
    function index_action() {
        if (strpos($this->config['sy_weburl'], 'https') !== FALSE) {
            
            $this->config['mapurl'] = 'https://api.map.baidu.com/api?v=2.0&ak=' . $this->config['map_key'] . '&s=1';
        } else {
            $this->config['mapurl'] = 'http://api.map.baidu.com/api?v=2.0&ak=' . $this->config['map_key'];
        }
        if ($this->config['sy_ossurl'] == ''){
            $this->config['sy_ossurl']  =  $this->config['sy_weburl'];
        if ($this->config['sy_ossurl'] == '') {
            $this->config['sy_ossurl'] = $this->config['sy_weburl'];
        }
        $this->yunset("config", $this->config);
        $this->yunset('sphinxSearchd', $sphinxSearchd);
        
        $this->yuntpl(array('admin/admin_web_config'));
    }
    /**
     * 系统-网站设置-网站logo
     */
    function save_logo_action(){
    function save_logo_action() {
        if ($_POST['waterconfig']) {
            
            $this->web_config();
@@ -42,61 +43,62 @@
            $this->ACT_layer_msg('网站LOGO配置设置成功!', 9, $_SERVER['HTTP_REFERER'], 2, 1);
        }
    }
    // 保存
    function save_action(){
    function save_action() {
//       var_dump($_POST);exit;
        if ($_POST['config']) {
            
            if ($_POST['config'] == 'uploadconfig'){
            if ($_POST['config'] == 'uploadconfig') {
                
                // 上传参数为空,保存默认值
                if (!$_POST['pic_maxsize'] || ($_POST['pic_maxsize'] == '' || $_POST['pic_maxsize'] < 1)){
                if (!$_POST['pic_maxsize'] || ($_POST['pic_maxsize'] == '' || $_POST['pic_maxsize'] < 1)) {
                    $_POST['pic_maxsize'] = 5;
                }
                if (!$_POST['file_maxsize'] || ($_POST['file_maxsize'] == '' || $_POST['file_maxsize'] < 1)){
                if (!$_POST['file_maxsize'] || ($_POST['file_maxsize'] == '' || $_POST['file_maxsize'] < 1)) {
                    $_POST['file_maxsize'] = 5;
                }
                if (!$_POST['pic_type']){
                if (!$_POST['pic_type']) {
                    $_POST['pic_type'] = 'jpg,png,jpeg,bmp,gif';
                }else{
                    $pic_type            =  explode(',',str_replace(' ','',$_POST['pic_type']));
                    //禁止后台设定可执行程序后缀
                    foreach($pic_type as $pickey => $picvalue){
                        $new_pic_type    =    strtolower(str_replace('.','',trim($picvalue)));
                        if(in_array($new_pic_type,array('php','asp','aspx','jsp','exe','do'))){
                            unset($pic_type[$pickey]);
                        }
                    }
                    $_POST['pic_type']    =    implode(',',$pic_type);
                }
                if (!$_POST['file_type']){
                } else {
                    $pic_type = explode(',', str_replace(' ', '', $_POST['pic_type']));
                    //禁止后台设定可执行程序后缀
                    foreach ($pic_type as $pickey => $picvalue) {
                        $new_pic_type = strtolower(str_replace('.', '', trim($picvalue)));
                        if (in_array($new_pic_type, array('php', 'asp', 'aspx', 'jsp', 'exe', 'do'))) {
                            unset($pic_type[$pickey]);
                        }
                    }
                    $_POST['pic_type'] = implode(',', $pic_type);
                }
                if (!$_POST['file_type']) {
                    $_POST['file_type'] = 'rar,zip,doc,docx,xls';
                }else{
                    $file_type            =  explode(',',str_replace(' ','',$_POST['file_type']));
                    //禁止后台设定可执行程序后缀
                    foreach($file_type as $filekey => $filevalue){
                        $new_file_type    =    strtolower(str_replace('.','',trim($filevalue)));
                        if(in_array($new_file_type,array('php','asp','aspx','jsp','exe','do'))){
                            unset($file_type[$filekey]);
                        }
                    }
                    $_POST['file_type']    =    implode(',',$file_type);
                }
                if (!$_POST['wmark_position']){
                } else {
                    $file_type = explode(',', str_replace(' ', '', $_POST['file_type']));
                    //禁止后台设定可执行程序后缀
                    foreach ($file_type as $filekey => $filevalue) {
                        $new_file_type = strtolower(str_replace('.', '', trim($filevalue)));
                        if (in_array($new_file_type, array('php', 'asp', 'aspx', 'jsp', 'exe', 'do'))) {
                            unset($file_type[$filekey]);
                        }
                    }
                    $_POST['file_type'] = implode(',', $file_type);
                }
                if (!$_POST['wmark_position']) {
                    $_POST['wmark_position'] = 1;
                }
            }
            unset($_POST['config']);
            unset($_POST['pytoken']);
            if (isset($_POST['map_key'])) {
                if (strpos($this->config['sy_weburl'], 'https') !== false) {
                if (strpos($this->config['sy_weburl'], 'https') !== FALSE) {
                    
                    $_POST['mapurl'] = 'https://api.map.baidu.com/api?v=2.0&ak=' . $_POST['map_key'] . '&s=1';
                } else {
@@ -105,34 +107,34 @@
            }
            if (!empty($_POST['sy_weburl'])) {
                $weburl = trim($_POST['sy_weburl']);
                if (stripos($weburl, 'http') === false){
                if (stripos($weburl, 'http') === FALSE) {
                    $this->layer_msg('网站地址缺少http://或https://', 8, 1, '');
                }
                // 保存域名时,相关的内容要重新保存,防止域名或http头改变后,有关功能异常
                if (!empty($this->config['map_key'])){
                if (!empty($this->config['map_key'])) {
                    // 百度地图地址
                    $protocol  =  getprotocol($weburl);
                    $_POST['mapurl']  =  $protocol . 'api.map.baidu.com/api?v=2.0&ak=' . $this->config['map_key'] . '&s=1';
                    $protocol = getprotocol($weburl);
                    $_POST['mapurl'] = $protocol . 'api.map.baidu.com/api?v=2.0&ak=' . $this->config['map_key'] . '&s=1';
                }
                if (!empty($this->config['sy_indexdomain'])){
                if (!empty($this->config['sy_indexdomain'])) {
                    // 分站默认域名
                    $protocol  =  getprotocol($weburl);
                    $indexUrl  =  parse_url($this->config['sy_indexdomain']);
                    $indexPath =  !empty($indexUrl['path']) ? $indexUrl['path'] : '';
                    $_POST['sy_indexdomain']  =  $protocol . $indexUrl['host'] . $indexPath;
                    $protocol = getprotocol($weburl);
                    $indexUrl = parse_url($this->config['sy_indexdomain']);
                    $indexPath = !empty($indexUrl['path']) ? $indexUrl['path'] : '';
                    $_POST['sy_indexdomain'] = $protocol . $indexUrl['host'] . $indexPath;
                }
                if (file_exists(DATA_PATH.'/api/alipay/alipay_data.php')){
                if (file_exists(DATA_PATH . '/api/alipay/alipay_data.php')) {
                    // 支付宝配置参数中网站域名,跟随调整
                    @include(DATA_PATH.'api/alipay/alipay_data.php');
                    if (!empty($alipaydata)){
                        $alipaydata['sy_weburl']  =  $weburl;
                        made_web(DATA_PATH.'api/alipay/alipay_data.php',ArrayToString($alipaydata),'alipaydata');
                    @include(DATA_PATH . 'api/alipay/alipay_data.php');
                    if (!empty($alipaydata)) {
                        $alipaydata['sy_weburl'] = $weburl;
                        made_web(DATA_PATH . 'api/alipay/alipay_data.php', ArrayToString($alipaydata), 'alipaydata');
                    }
                }
            }
            $configM  =  $this->MODEL('config');
            $configM = $this->MODEL('config');
            
            $configM -> setConfig($_POST);
            $configM->setConfig($_POST);
            
            // 判断验证字符
            if ($_POST['code_strlength'] < 5) {
@@ -143,11 +145,11 @@
            }
        }
    }
    // 加载模板缓存
    function settplcache_action(){
        include (CONFIG_PATH . "db.data.php");
        include (PLUS_PATH . "cache.config.php");
    function settplcache_action() {
        include(CONFIG_PATH . "db.data.php");
        include(PLUS_PATH . "cache.config.php");
        $modelconfig = $arr_data['modelconfig'];
        
        foreach ($modelconfig as $key => $value) {
@@ -161,12 +163,12 @@
            'admin/admin_tplcache'
        ));
    }
    // 保存设置模板缓存
    function savetplcache_action(){
    function savetplcache_action() {
        if ($_POST["config"]) {
            unset($_POST["config"]);
            include (CONFIG_PATH . "db.data.php");
            include(CONFIG_PATH . "db.data.php");
            $modelconfig = array_keys($arr_data['modelconfig']);
            $config_new = array();
            foreach ($_POST as $key => $v) {
@@ -180,24 +182,24 @@
            $this->ACT_layer_msg("模块缓存设置修改成功!", 9, "index.php?m=config&c=settplcache", 2, 1);
        }
    }
    // 刷新sphinx主索引
    function refresh_sphinx_main_index_action(){
        require_once (APP_PATH . 'app/include/cron/sphinx_indexer_main.php');
    function refresh_sphinx_main_index_action() {
        require_once(APP_PATH . 'app/include/cron/sphinx_indexer_main.php');
        echo '1';
        exit();
    }
    // 开启sphinx时,检查searchd是否运行,生成sphinx.conf配置文件
    function check_usesphinx_action(){
        include_once (LIB_PATH . "sphinx.class.php");
        $useSphinx = false;
    function check_usesphinx_action() {
        include_once(LIB_PATH . "sphinx.class.php");
        $useSphinx = FALSE;
        if (sphinx::isRun($this->config['sphinxhost'], $this->config['sphinxport'])) {
            $useSphinx = true;
            $useSphinx = TRUE;
        }
        
        if ($useSphinx) {
            require_once (LIB_PATH . 'sphinxhelper.class.php');
            require_once(LIB_PATH . 'sphinxhelper.class.php');
            $helper = new sphinxhelper();
            $helper->generateConf();
            echo '1';
@@ -207,19 +209,19 @@
            exit();
        }
    }
    // 生成sphinx.conf配置文件
    function generate_conf_action(){
        require_once (LIB_PATH . 'sphinxhelper.class.php');
    function generate_conf_action() {
        require_once(LIB_PATH . 'sphinxhelper.class.php');
        $helper = new sphinxhelper();
        $helper->generateConf();
        echo '1';
        exit();
    }
    // 启动/停止sphinx的searchd搜索服务
    public function sphinx_searchd_action(){
        if (! isset($_POST['status']) || ($_POST['status'] != 'start' && $_POST['status'] != 'stop')) {
    public function sphinx_searchd_action() {
        if (!isset($_POST['status']) || ($_POST['status'] != 'start' && $_POST['status'] != 'stop')) {
            echo '2';
            exit();
        }
@@ -240,36 +242,37 @@
        echo '1';
        exit();
    }
    //后台专用,layui上传图片公共方法
    function layui_upload_action()
    {
    function layui_upload_action() {
        
        if($_FILES['file']['tmp_name']){
            $data  =  array(
                'name'      =>  $_POST['name'],
                'path'      =>  $_POST['path'],
                'imgid'     =>  $_POST['imgid'],
                'file'      =>  $_FILES['file']
        if ($_FILES['file']['tmp_name']) {
            $data = array(
                'name'  => $_POST['name'],
                'path'  => $_POST['path'],
                'imgid' => $_POST['imgid'],
                'file'  => $_FILES['file']
            );
            
            $UploadM=$this->MODEL('upload');
            $UploadM = $this->MODEL('upload');
            
            $return = $UploadM->layUpload($data);
            
            if (!empty($_POST['name']) && $return['code'] == 0){
            if (!empty($_POST['name']) && $return['code'] == 0) {
                // 后台上传logo后,重新生成缓存
                $this->web_config();
            }
        }else{
            $return  =  array(
                'code'  =>  1,
                'msg'   =>  '请上传文件',
                'data'  =>  array()
        } else {
            $return = array(
                'code' => 1,
                'msg'  => '请上传文件',
                'data' => array()
            );
        }
        echo json_encode($return);
    }
}
?>
app/public/action.class.php
@@ -1,4 +1,5 @@
<?php
/*
* $Author :PHPYUN开发团队
*
@@ -8,111 +9,111 @@
*
* 软件声明:未经授权前提下,不得用于商业运营、二次开发以及任何形式的再次发布。
 */
class model{
class model {
    // 操作状态
    const MODEL_INSERT          =   1;      //  插入模型数据
    const MODEL_UPDATE          =   2;      //  更新模型数据
    const MODEL_BOTH            =   3;      //  包含上面两种方式
    const MUST_VALIDATE         =   1;      // 必须验证
    const EXISTS_VALIDATE       =   0;      // 表单存在字段则验证
    const VALUE_VALIDATE        =   2;      // 表单值不为空则验证
    const MODEL_INSERT = 1;      //  插入模型数据
    const MODEL_UPDATE = 2;      //  更新模型数据
    const MODEL_BOTH = 3;      //  包含上面两种方式
    const MUST_VALIDATE = 1;      // 必须验证
    const EXISTS_VALIDATE = 0;      // 表单存在字段则验证
    const VALUE_VALIDATE = 2;      // 表单值不为空则验证
    //网站配置信息
    protected $config           =   null;
    protected $config = NULL;
    // 当前数据库操作对象
    protected $db               =   null;
    protected $db = NULL;
    // 主键名称
    protected $pk               =   'id';
    protected $pk = 'id';
    // 主键是否自动增长
    protected $autoinc          =   false;
    protected $autoinc = FALSE;
    // 数据表前缀
    protected $def              =   null;
    protected $def = NULL;
    // 模型名称
    protected $name             =   '';
    protected $name = '';
    // 数据库编码
    protected $coding           =   '';
    protected $coding = '';
    // 数据库名称
    // 数据库名称
    protected $dbName           =   '';
    protected $dbName = '';
    //数据库配置
    protected $connection       =   '';
    protected $connection = '';
    // 数据表名(不包含表前缀)
    protected $tableName        =   '';
    protected $tableName = '';
    // 实际数据表名(包含表前缀)
    protected $trueTableName    =   '';
    protected $trueTableName = '';
    // 最近错误信息
    protected $error            =   '';
    protected $error = '';
    // 字段信息
    protected $fields           =   array();
    protected $fields = array();
    // 数据信息
    protected $data             =   array();
    protected $data = array();
    // 查询表达式参数
    protected $options          =   array();
    protected $_validate        =   array();  // 自动验证定义
    protected $_auto            =   array();  // 自动完成定义
    protected $_map             =   array();  // 字段映射定义
    protected $_scope           =   array();  // 命名范围定义
    protected $options = array();
    protected $_validate = array();  // 自动验证定义
    protected $_auto = array();  // 自动完成定义
    protected $_map = array();  // 字段映射定义
    protected $_scope = array();  // 命名范围定义
    // 是否自动检测数据表字段信息
    protected $autoCheckFields  =   true;
    protected $autoCheckFields = TRUE;
    // 是否批处理验证
    protected $patchValidate    =   false;
    protected $patchValidate = FALSE;
    // 链操作方法列表
    protected $methods          =   array('order','alias','having','group','lock','distinct','auto','filter','validate','result','token');
    protected $methods = array('order', 'alias', 'having', 'group', 'lock', 'distinct', 'auto', 'filter', 'validate', 'result', 'token');
    //开启分站功能的数据表
    protected $sitetable        =   array('ad_order','admin_announcement','zhaopinhui','zhaopinhui_com','zhaopinhui_pic','news_base','news_content','resume_expect','member','company_job','resume','user_entrust','user_entrust_record','down_resume','look_resume','company','company_cert','company_msg','company_news','company_order','company_pay','company_product','once_job','resume_tiny','userid_msg','userid_job','look_job','admin_link','px_subject','px_train_news','px_teacher','lt_info','lt_job','report','invoice_record','company_statis','px_train','partjob','hotjob','px_baoming','px_zixun','company_show','resume_show','banner','px_banner','px_train_show','rebates','lt_talent','member_log','login_log','user_change','company_account');
    //此数组针对insert_into方法。目的是添加附表数据的时候,不加入当前站的did,而是存member表中的did。
   // protected $sitetadd=array('ad','admin_announcement','zhaopinhui','news_content','member','resume','company','once_job','px_train','resume_tiny','admin_link','lt_info','partjob','hotjob');
    protected $admindir;
    protected $siteadmindir;
    protected $logininfo;
    public function __construct($db,$def,$logininfo = array(),$tpl=''){
        global $coding,$config,$adminDir,$siteAdminDir;
        $this->db = $db;
        $this->tp = '';//未查到在哪用到
        $this->def = $def;
        $this->md = $coding;
    protected $sitetable = array('ad_order', 'admin_announcement', 'zhaopinhui', 'zhaopinhui_com', 'zhaopinhui_pic', 'news_base', 'news_content', 'resume_expect', 'member', 'company_job', 'resume', 'user_entrust', 'user_entrust_record', 'down_resume', 'look_resume', 'company', 'company_cert', 'company_msg', 'company_news', 'company_order', 'company_pay', 'company_product', 'once_job', 'resume_tiny', 'userid_msg', 'userid_job', 'look_job', 'admin_link', 'px_subject', 'px_train_news', 'px_teacher', 'lt_info', 'lt_job', 'report', 'invoice_record', 'company_statis', 'px_train', 'partjob', 'hotjob', 'px_baoming', 'px_zixun', 'company_show', 'resume_show', 'banner', 'px_banner', 'px_train_show', 'rebates', 'lt_talent', 'member_log', 'login_log', 'user_change', 'company_account');
    //此数组针对insert_into方法。目的是添加附表数据的时候,不加入当前站的did,而是存member表中的did。
    // protected $sitetadd=array('ad','admin_announcement','zhaopinhui','news_content','member','resume','company','once_job','px_train','resume_tiny','admin_link','lt_info','partjob','hotjob');
    protected $admindir;
    protected $siteadmindir;
    protected $logininfo;
    public function __construct($db, $def, $logininfo = array(), $tpl = '') {
        global $coding, $config, $adminDir, $siteAdminDir;
        $this->db = $db;
        $this->tp = '';//未查到在哪用到
        $this->def = $def;
        $this->md = $coding;
        $this->config = $config;
        if (!empty($logininfo)){
        if (!empty($logininfo)) {
            $this->uid = $logininfo['uid'];
            $this->username = $logininfo['username'];
            $this->usertype = $logininfo['usertype'];
        }
        $this->admindir = $adminDir;
        $this->siteadmindir = $siteAdminDir;
        $this->tpl = $tpl;
        if(!($this->config['sy_wapdomain'])){
            $this->config['sy_wapdomain'] = $this->config['sy_weburl'].'/'.$this->config['sy_wapdir'];
        }else{
            if($config['sy_wapssl']=='1'){
                $protocol = 'https://';
            }else{
                $protocol = 'http://';
            }
            if(strpos($this->config['sy_wapdomain'],'http://')===false && strpos($this->config['sy_wapdomain'],'https://')===false)
            {
                $this->config['sy_wapdomain'] = $protocol.$this->config['sy_wapdomain'];
            }
        }
        if($adminDir||!$siteAdminDir){
            //$this->sitetadd = array();
            $this->sitetable = array();
        }
        // oss关闭时,oss地址为服务器地址
        if (!isset($this->config['sy_oss']) || (isset($this->config['sy_oss']) && $this->config['sy_oss'] == 2)){
            $this->config['sy_ossurl'] = $this->config['sy_weburl'];
        }
    }
        $this->admindir = $adminDir;
        $this->siteadmindir = $siteAdminDir;
        $this->tpl = $tpl;
        if (!($this->config['sy_wapdomain'])) {
            $this->config['sy_wapdomain'] = $this->config['sy_weburl'] . '/' . $this->config['sy_wapdir'];
        } else {
            if ($config['sy_wapssl'] == '1') {
                $protocol = 'https://';
            } else {
                $protocol = 'http://';
            }
            if (strpos($this->config['sy_wapdomain'], 'http://') === FALSE && strpos($this->config['sy_wapdomain'], 'https://') === FALSE) {
                $this->config['sy_wapdomain'] = $protocol . $this->config['sy_wapdomain'];
            }
        }
        if ($adminDir || !$siteAdminDir) {
            //$this->sitetadd = array();
            $this->sitetable = array();
        }
        // oss关闭时,oss地址为服务器地址
        if (!isset($this->config['sy_oss']) || (isset($this->config['sy_oss']) && $this->config['sy_oss'] == 2)) {
            $this->config['sy_ossurl'] = $this->config['sy_weburl'];
        }
    }
    /**
     * 设置数据对象的值
     * @access public
@@ -120,11 +121,11 @@
     * @param mixed $value 值
     * @return void
     */
    public function __set($name,$value) {
    public function __set($name, $value) {
        // 设置数据对象属性
        $this->data[$name]  =   $value;
        $this->data[$name] = $value;
    }
    /**
     * 获取数据对象的值
     * @access public
@@ -132,9 +133,9 @@
     * @return mixed
     */
    public function __get($name) {
        return isset($this->data[$name])?$this->data[$name]:null;
        return isset($this->data[$name]) ? $this->data[$name] : NULL;
    }
    /**
     * 检测数据对象的值
     * @access public
@@ -144,7 +145,7 @@
    public function __isset($name) {
        return isset($this->data[$name]);
    }
    /**
     * 销毁数据对象的值
     * @access public
@@ -154,403 +155,419 @@
    public function __unset($name) {
        unset($this->data[$name]);
    }
    // 回调方法 初始化模型
    protected function _initialize() {}
    function insert_into($table,$data=array()){
        $value=array();
        $this->db->connect();
        include(PLUS_PATH.'dbstruct.cache.php');
        $TableFullName=$this->def.$table;
        if(is_array($$TableFullName)){
            $fields=array_keys($$TableFullName);
        }else{
            return false;
        }
        if(is_array($fields)){
            if(is_array($data)){
                foreach($data as $key=>$v){
                    if(in_array($key,$fields)){
                        $v = $this->FilterStr($v);
                        $value[]="`".$key."`='".$this->db->escape_string($v)."'";
                    }
                }
            }
        }
        $value=@implode(",",$value);
        return $this->DB_insert_once($table,$value);
    }
    function update_once($table,$data=array(),$where=array()){
        $this->db->connect();
        $value=array();
        include(PLUS_PATH.'dbstruct.cache.php');
        $TableFullName=$this->def.$table;
        if(is_array($$TableFullName)){
            $fields=array_keys($$TableFullName);
        }else{
            return false;
        }
        if(is_array($fields)){
            if(is_array($data)){
                foreach($data as $key=>$v){
                    if(in_array($key,$fields)){
                        if(is_array($v)){
                            if($v[0] == '+'){
                                $value[]  =  '`'.$key.'` = `'.$key.'` + '.$this->db->escape_string($v[1]);
                            }elseif ($v[0] == '-'){
                                $value[]  =  '`'.$key.'` = `'.$key.'` - '.$this->db->escape_string($v[1]);
                            }else if($v[0] == '='){
                                $value[]  =  '`'.$key.'`  = '.$this->db->escape_string($v[1]);
                            }elseif ($v[0] == 'CASE'){
                                $casesql  =  '`'.$key.'` =  CASE `'.$this->db->escape_string($v[1]).'`';
                                foreach ($v[2] as $ck=>$cv){
                                    $casesql  .=  " WHEN '".$ck."' THEN '".$this->db->escape_string($cv)."' ";
                                }
                                $casesql  .=  'END';
                                $value[]  =  $casesql;
                            }elseif ($v[0] == 'DATE_ADD'){
                                $value[]  =  '`'.$key.'` = DATE_ADD(`'.$key.'` , INTERVAL '.$this->db->escape_string($v[1]).' DAY )';
                            }elseif ($v[0] == 'concat'){
                                $value[]  =  '`'.$key.'` = concat(`'.$key.'` , ",'.$this->db->escape_string($v[1]).' ")';
                            }else{
                                $this->db->show_error();
                            }
                        }else{
                            $v = $this->FilterStr($v);
                            $value[] = "`".$key."`='".$this->db->escape_string($v)."'";
                        }
                    }
                }
            }
            $whereNew  =  $this->checkWhere($where);
            $value     =  @implode(',',$value);
            if($value !='' && $whereNew !=''){
                return $this->DB_update_all($table,$value,$whereNew);
            }else{
                return false;
            }
        }
    }
    function FilterStr($str){
        $str = stripslashes($str);
        return $str;
    }
    function Memcache_set($name,$value="")
    {
        global $config;
        if(isset($config['ismemcache']) && $config['ismemcache']==2){
            return false;
        }
        if (!empty($config['memcachehost']) && !empty($config['memcacheport']) && !empty($config['memcachetime'])){
            $memcachehost  =  $config['memcachehost'];//所在服务器
            $memcacheport  =  $config['memcacheport'];//所在服务器端口
            $memcachezip   =  0;//是否支持解压缩
            $memcachetime  =  $config['memcachetime'];//缓存时间
            $name=md5(str_replace(array(" ","`","'",".","=","!"),"",$name));
            if(!extension_loaded('memcache'))return;
            $memcache =new memcache();
            if(!@class_exists($memcache)){return;}
            $memcache->connect($memcachehost,$memcacheport) or die ("Memcache连接失败或您的服务器不支持Memcache,请在后台关闭!");
            $val  =  $memcache->get($name);
            if(!is_array($val)){
                $val  =  $value;
                $memcache->set($name,$value,$memcachezip,$memcachetime);
            }
            $memcache->close();
            return $val;
        }else{
            return false;
        }
    }
    /**
    protected function _initialize() {
    }
    function insert_into($table, $data = array()) {
        $value = array();
        $this->db->connect();
        include(PLUS_PATH . 'dbstruct.cache.php');
        $TableFullName = $this->def . $table;
        if (is_array($$TableFullName)) {
            $fields = array_keys($$TableFullName);
        } else {
            return FALSE;
        }
        if (is_array($fields)) {
            if (is_array($data)) {
                foreach ($data as $key => $v) {
                    if (in_array($key, $fields)) {
                        $v = $this->FilterStr($v);
                        $value[] = "`" . $key . "`='" . $this->db->escape_string($v) . "'";
                    }
                }
            }
        }
        $value = @implode(",", $value);
        return $this->DB_insert_once($table, $value);
    }
    function update_once($table, $data = array(), $where = array()) {
        $this->db->connect();
        $value = array();
        include(PLUS_PATH . 'dbstruct.cache.php');
//        $TableFullName=$this->def.$table;
//        var_dump($$TableFullName);exit();
//        if (is_array($where)) {
//            $fields = array_keys($where);
//        } else {
//            return FALSE;
//        }
//        var_dump($fields);exit();
        if (is_array($data)) {
            foreach ($data as $key => $v) {
                if (is_array($v)) {
                    if ($v[0] == '+') {
                        $value[] = '`' . $key . '` = `' . $key . '` + ' . $this->db->escape_string($v[1]);
                    } elseif ($v[0] == '-') {
                        $value[] = '`' . $key . '` = `' . $key . '` - ' . $this->db->escape_string($v[1]);
                    } else if ($v[0] == '=') {
                        $value[] = '`' . $key . '`  = ' . $this->db->escape_string($v[1]);
                    } elseif ($v[0] == 'CASE') {
                        $casesql = '`' . $key . '` =  CASE `' . $this->db->escape_string($v[1]) . '`';
                        foreach ($v[2] as $ck => $cv) {
                            $casesql .= " WHEN '" . $ck . "' THEN '" . $this->db->escape_string($cv) . "' ";
                        }
                        $casesql .= 'END';
                        $value[] = $casesql;
                    } elseif ($v[0] == 'DATE_ADD') {
                        $value[] = '`' . $key . '` = DATE_ADD(`' . $key . '` , INTERVAL ' . $this->db->escape_string($v[1]) . ' DAY )';
                    } elseif ($v[0] == 'concat') {
                        $value[] = '`' . $key . '` = concat(`' . $key . '` , ",' . $this->db->escape_string($v[1]) . ' ")';
                    } else {
                        $this->db->show_error();
                    }
                } else {
                    $v = $this->FilterStr($v);
                    $value[] = "`" . $key . "`='" . $this->db->escape_string($v) . "'";
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        $value = @implode(',', $value);
        if ($value != '' && $whereNew != '') {
            return $this->DB_update_all($table, $value, $whereNew);
        } else {
            return FALSE;
        }
    }
    function FilterStr($str) {
        $str = stripslashes($str);
        return $str;
    }
    function Memcache_set($name, $value = "") {
        global $config;
        if (isset($config['ismemcache']) && $config['ismemcache'] == 2) {
            return FALSE;
        }
        if (!empty($config['memcachehost']) && !empty($config['memcacheport']) && !empty($config['memcachetime'])) {
            $memcachehost = $config['memcachehost'];//所在服务器
            $memcacheport = $config['memcacheport'];//所在服务器端口
            $memcachezip = 0;//是否支持解压缩
            $memcachetime = $config['memcachetime'];//缓存时间
            $name = md5(str_replace(array(" ", "`", "'", ".", "=", "!"), "", $name));
            if (!extension_loaded('memcache')) return;
            $memcache = new memcache();
            if (!@class_exists($memcache)) {
                return;
            }
            $memcache->connect($memcachehost, $memcacheport) or die ("Memcache连接失败或您的服务器不支持Memcache,请在后台关闭!");
            $val = $memcache->get($name);
            if (!is_array($val)) {
                $val = $value;
                $memcache->set($name, $value, $memcachezip, $memcachetime);
            }
            $memcache->close();
            return $val;
        } else {
            return FALSE;
        }
    }
    /**
     * 通用数量查询$tablename,$where = 1, $select="*"
     */
    function DB_select_num($tablename, $where = '', $select = "*",$tablename2='',$special=''){
        if(!$this->checkTableName($tablename)){
            return false;
        }
        $cachename=$tablename.$where;
        if(!$return=$this->Memcache_set($cachename)){//获取是否存在memcache
            if($tablename2){
                if($this->siteadmindir && $special==''){
                   if(in_array($tablename,$this->sitetable) && is_numeric($this->config['did'])){
                      $Where='a.`did`='.$this->config['did']."' and ".$Where;
                   }
                   if(in_array($tablename2,$this->sitetable) && is_numeric($this->config['did'])){
                      $Where='b.`did`='.$this->config['did']."' and ".$Where;
                   }
                }
                $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename . " as a," . $this->def . $tablename2 . " as b  WHERE $where";
            }else{
                if($this->siteadmindir && $special==''){
                    $where = $this->site_fetchsql($where,$tablename);
                }
                $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename;
                if($where)
                {
                    $SQL    .=    " WHERE ".$where;
                }
            }
            $query = $this->db->query($SQL);
            while($row=$this->db->fetch_array($query)){$return=$row['num'];}
            $this->Memcache_set($cachename,$return);//设置memcache
        }
        if($return<1){$return='0';}
        return $return;
    }
    function select_num($tablename, $where = array(), $select = "*"){
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if($this->siteadmindir){
            if(in_array($tablename,$this->sitetable)){
                if(is_numeric($this->config['did'])){
                    $where['did']=$this->config['did'];
                }
            }
        }
        $whereNew  =  $this->checkWhere($where);
        $cachename =  $tablename.$whereNew;
        if(!$return=$this->Memcache_set($cachename)){//获取是否存在memcache
            $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename . $whereNew;
            $query = $this->db->query($SQL);
            while($row=$this->db->fetch_array($query)){$return=$row['num'];}
            $this->Memcache_set($cachename,$return);//设置memcache
        }
        if($return<1){$return='0';}
        return $return;
    }
    /**
     * 通用query查询 $tablename,$where = 1, $select="*"
     *$special:标记某些特殊查询,不使用did参数。
     *2016-1-14        LGL
     */
    function DB_select_query($tablename, $where = 1, $select = "*",$special='') {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if($this->siteadmindir){
            $where = $this->site_fetchsql($where,$tablename);
        }
        $SQL = "SELECT $select FROM " . $this->def . $tablename . " WHERE $where";
        $query=$this->db->query($SQL);
        return $query;
    }
    /**
     * 通用all查询 $tablename,$where = 1, $select="*"
     *$special:标记某些特殊查询,不使用did参数。
     */
    function DB_select_all($tablename, $where = 1, $select = "*",$special='') {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        $cachename=$tablename.$where;
        if(!$row_return=$this->Memcache_set($cachename)){//获取是否存在memcache
            $row_return=array();
            if($this->siteadmindir&&$special==''){
                    $where = $this->site_fetchsql($where,$tablename);
            }
            $SQL = "SELECT $select FROM `" . $this->def . $tablename . "`";
            if( $where ){
                $SQL .= " WHERE ".$where;
            }
            $query=$this->db->query($SQL);
            while($row=$this->db->fetch_array($query)){$row_return[]=$row;}
            $this->Memcache_set($cachename,$row_return);//设置memcache
        }
        return $row_return;
    }
    //新多条查询
    function select_all($tablename, $where = array(), $select = "*",$special='') {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if($this->siteadmindir && $special==''){
            if(in_array($tablename,$this->sitetable)){
                if(is_numeric($this->config['did'])){
                    $where['did']=$this->config['did'];
                }
            }
        }
        $whereNew    =    $this->checkWhere($where);
        $cachename  =  $tablename.$whereNew;
        if(!$row_return=$this->Memcache_set($cachename)){//获取是否存在memcache
            $row_return=array();
            /*if($this->siteadmindir&&$special==''){
                    $whereNew = $this->site_fetchsql($whereNew,$tablename);
            }  */
            $SQL = "SELECT $select FROM `" . $this->def . $tablename . "`" . $whereNew;
            $query = $this->db->query($SQL);
            while($row=$this->db->fetch_array($query)){
    function DB_select_num($tablename, $where = '', $select = "*", $tablename2 = '', $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        $cachename = $tablename . $where;
        if (!$return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            if ($tablename2) {
                if ($this->siteadmindir && $special == '') {
                    if (in_array($tablename, $this->sitetable) && is_numeric($this->config['did'])) {
                        $Where = 'a.`did`=' . $this->config['did'] . "' and " . $Where;
                    }
                    if (in_array($tablename2, $this->sitetable) && is_numeric($this->config['did'])) {
                        $Where = 'b.`did`=' . $this->config['did'] . "' and " . $Where;
                    }
                }
                
                $row_return[]  =  $row;
                $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename . " as a," . $this->def . $tablename2 . " as b  WHERE $where";
            } else {
                if ($this->siteadmindir && $special == '') {
                    $where = $this->site_fetchsql($where, $tablename);
                }
                $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename;
                if ($where) {
                    $SQL .= " WHERE " . $where;
                }
            }
            $this->Memcache_set($cachename,$row_return);//设置memcache
        }
            $query = $this->db->query($SQL);
            while ($row = $this->db->fetch_array($query)) {
                $return = $row['num'];
            }
            $this->Memcache_set($cachename, $return);//设置memcache
        }
        if ($return < 1) {
            $return = '0';
        }
        return $return;
    }
    function select_num($tablename, $where = array(), $select = "*") {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if ($this->siteadmindir) {
            if (in_array($tablename, $this->sitetable)) {
                if (is_numeric($this->config['did'])) {
                    $where['did'] = $this->config['did'];
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        $cachename = $tablename . $whereNew;
        if (!$return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            $SQL = "SELECT count($select) as num FROM " . $this->def . $tablename . $whereNew;
            $query = $this->db->query($SQL);
            while ($row = $this->db->fetch_array($query)) {
                $return = $row['num'];
            }
            $this->Memcache_set($cachename, $return);//设置memcache
        }
        if ($return < 1) {
            $return = '0';
        }
        return $return;
    }
    /**
     * 通用query查询 $tablename,$where = 1, $select="*"
     *$special:标记某些特殊查询,不使用did参数。
     *2016-1-14        LGL
     */
    function DB_select_query($tablename, $where = 1, $select = "*", $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if ($this->siteadmindir) {
            $where = $this->site_fetchsql($where, $tablename);
        }
        $SQL = "SELECT $select FROM " . $this->def . $tablename . " WHERE $where";
        $query = $this->db->query($SQL);
        return $query;
    }
    /**
     * 通用all查询 $tablename,$where = 1, $select="*"
     *$special:标记某些特殊查询,不使用did参数。
     */
    function DB_select_all($tablename, $where = 1, $select = "*", $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        $cachename = $tablename . $where;
        if (!$row_return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            $row_return = array();
            if ($this->siteadmindir && $special == '') {
                $where = $this->site_fetchsql($where, $tablename);
            }
            $SQL = "SELECT $select FROM `" . $this->def . $tablename . "`";
            if ($where) {
                $SQL .= " WHERE " . $where;
            }
            $query = $this->db->query($SQL);
            while ($row = $this->db->fetch_array($query)) {
                $row_return[] = $row;
            }
            $this->Memcache_set($cachename, $row_return);//设置memcache
        }
        return $row_return;
    }
    /**
    }
    //新多条查询
    function select_all($tablename, $where = array(), $select = "*", $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if ($this->siteadmindir && $special == '') {
            if (in_array($tablename, $this->sitetable)) {
                if (is_numeric($this->config['did'])) {
                    $where['did'] = $this->config['did'];
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        $cachename = $tablename . $whereNew;
        if (!$row_return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            $row_return = array();
            /*if($this->siteadmindir&&$special==''){
                    $whereNew = $this->site_fetchsql($whereNew,$tablename);
            }  */
            $SQL = "SELECT $select FROM `" . $this->def . $tablename . "`" . $whereNew;
            $query = $this->db->query($SQL);
            while ($row = $this->db->fetch_array($query)) {
                $row_return[] = $row;
            }
            $this->Memcache_set($cachename, $row_return);//设置memcache
        }
        return $row_return;
    }
    /**
     * 通用all查询双表 $tablename1,$tablename2, $where = 1, $select = "*"
     */
    function DB_select_alls($tablename1,$tablename2, $where = 1, $select = "*") {
        if(!$this->checkTableName($tablename1)){
            return false;
        }
        if(!$this->checkTableName($tablename2)){
            return false;
        }
        $cachename=$tablename1.$tablename2.$where;
        if(!$row_return=$this->Memcache_set($cachename)){//获取是否存在memcache
            if($this->siteadmindir){
                 if(in_array($tablename1,$this->sitetable) && is_numeric($this->config['did'])){
                        $where='a.`did`='.$this->config['did']." and ".$where;
                 }
                 if(in_array($tablename2,$this->sitetable) && is_numeric($this->config['did'])){
                        $where='b.`did`='.$this->config['did']." and ".$where;
                 }
            }
            $SQL = "SELECT $select FROM " . $this->def . $tablename1. " as a," . $this->def . $tablename2 . " as b WHERE $where";
            $query=$this->db->query($SQL);
            while($row=$this->db->fetch_array($query)){$row_return[]=$row;}
            $this->Memcache_set($cachename,$row_return);//设置memcache
        }
    function DB_select_alls($tablename1, $tablename2, $where = 1, $select = "*") {
        if (!$this->checkTableName($tablename1)) {
            return FALSE;
        }
        if (!$this->checkTableName($tablename2)) {
            return FALSE;
        }
        $cachename = $tablename1 . $tablename2 . $where;
        if (!$row_return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            if ($this->siteadmindir) {
                if (in_array($tablename1, $this->sitetable) && is_numeric($this->config['did'])) {
                    $where = 'a.`did`=' . $this->config['did'] . " and " . $where;
                }
                if (in_array($tablename2, $this->sitetable) && is_numeric($this->config['did'])) {
                    $where = 'b.`did`=' . $this->config['did'] . " and " . $where;
                }
            }
            $SQL = "SELECT $select FROM " . $this->def . $tablename1 . " as a," . $this->def . $tablename2 . " as b WHERE $where";
            $query = $this->db->query($SQL);
            while ($row = $this->db->fetch_array($query)) {
                $row_return[] = $row;
            }
            $this->Memcache_set($cachename, $row_return);//设置memcache
        }
        return $row_return;
    }
    /**
    }
    /**
     * 单表单条插入 $tablename, $value
     */
    function DB_insert_once($tablename, $value){
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if(in_array($tablename,$this->sitetable) && strpos($value,'`did`')===false){
            $value.=",`did`='".$this->config['did']."'";
        }
        $SQL = "INSERT INTO `" . $this->def . $tablename . "` SET ".$value;
        $this->db->query("set sql_mode=''");
        $this->db->query($SQL);
        $nid= $this->db->insert_id();
        return $nid;
    }
    function DB_insert_once($tablename, $value) {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if (in_array($tablename, $this->sitetable) && strpos($value, '`did`') === FALSE) {
            $value .= ",`did`='" . $this->config['did'] . "'";
        }
        $SQL = "INSERT INTO `" . $this->def . $tablename . "` SET " . $value;
        $this->db->query("set sql_mode=''");
        $this->db->query($SQL);
        $nid = $this->db->insert_id();
        return $nid;
    }
    //一次插入多条数据,方便本地测试数据库构造数据进行测试
    function DB_insert_multi($tablename, $valueArr){
    function DB_insert_multi($tablename, $valueArr) {
        // INSERT INTO `roles` (`uid`,`rid`) VALUES
        //    (534,14),(535,14),(536,14),(537,14),(539,14)
        if(!$this->checkTableName($tablename)){
            return false;
        }
        include(PLUS_PATH.'dbstruct.cache.php');
        $TableFullName=$this->def.$tablename;
        if(is_array($$TableFullName)){
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        include(PLUS_PATH . 'dbstruct.cache.php');
        $TableFullName = $this->def . $tablename;
        if (is_array($$TableFullName)) {
            $fieldsArr = array_keys($$TableFullName);
        }
        if($fieldsArr){
        if ($fieldsArr) {
            $fields = array();
            foreach($valueArr[0] as $f => $v){
                if(in_array($f, $fieldsArr)){
            foreach ($valueArr[0] as $f => $v) {
                if (in_array($f, $fieldsArr)) {
                    $fields [] = "`$f`";
                }
            }
            $fields = implode(',', $fields);
            $values = array();
            foreach($valueArr as $r){
            foreach ($valueArr as $r) {
                $arr = array();
                foreach($r as $k => $v){
                    if(in_array($k, $fieldsArr)){
                foreach ($r as $k => $v) {
                    if (in_array($k, $fieldsArr)) {
                        $arr [] = "'" . $this->db->escape_string($v) . "'";
                    }
                }
@@ -559,107 +576,108 @@
            $values = implode(',', $values);
            $SQL = "INSERT INTO `{$this->def}{$tablename}` ($fields) VALUES $values";
            $this->db->query("set sql_mode=''");
            $return=$this->db->query($SQL);
            $return = $this->db->query($SQL);
            return $return;
        }
    }
    /**
    /**
     * 更新 $tablename, $value, $where = 1
     */
    function DB_update_all($tablename, $value, $where ,$pecial=''){
        if(!$this->checkTableName($tablename)){
            return false;
        }
    function DB_update_all($tablename, $value, $where, $pecial = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        
        if(empty($where) || empty($value)){
            return false;
        }
        $SQL = "UPDATE `" . $this->def . $tablename . "` SET $value  ".$where;
        if (empty($where) || empty($value)) {
            return FALSE;
        }
        $SQL = "UPDATE `" . $this->def . $tablename . "` SET $value  " . $where;
        $this->db->query("set sql_mode=''");
        $return=$this->db->query($SQL);
        return $return;
    }
    /**
        $return = $this->db->query($SQL);
        return $return;
    }
    /**
     * 删除 $tablename, $value, $where = 1
     */
    function DB_delete_all($tablename, $where, $limit = 'limit 1',$pecial='', $norecycle = ''){
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if(empty($where)){
            return false;
        }
        if($pecial!=$tablename){
            //快速创建简历保存数据不进入回收站
            if(!in_array($tablename,array('temporary_resume')) && $norecycle != '1'){
                $this->insert_recycle($tablename,$this->site_fetchsql($where,$tablename));//先执行回收站
            }
            $SQL = "DELETE FROM `" . $this->def . $tablename . "` WHERE ".$this->site_fetchsql($where,$tablename)." $limit";
        }else{
            //快速创建简历保存数据不进入回收站
            if(!in_array($tablename,array('temporary_resume')) && $norecycle != '1'){
                $this->insert_recycle($tablename,$where);//先执行回收站
            }
            $SQL = "DELETE FROM `" . $this->def . $tablename . "` WHERE ".$where." $limit";
        }
        $this->db->query("set `sql_mode`=''");
        return $this->db->query($SQL);
    }
    /**
     *    @desc 删除数据库
     *  @param    $tablename    数据表名;
                $where        删除数据表数据查询条件;
                $limit        删除记录数
                $pecial        暂未发现使用
                $norecycle    1:不做回收站插入操作
     */
    function delete_all($tablename, $where = array(), $limit = 'limit 1', $special='', $norecycle = '')
    {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        include(PLUS_PATH.'dbstruct.cache.php');
        if($this->siteadmindir && $special==''){
            if(in_array($tablename,$this->sitetable)){
                if(is_numeric($this->config['did'])){
                    $where['did']=$this->config['did'];
                }
            }
        }
        $whereNew    =    $this->checkWhere($where);
        if(!empty($whereNew)){
            //快速创建简历保存数据不进入回收站
            if(!in_array($tablename,array('temporary_resume')) && $norecycle!='1'){
                $this->insert_recycle($tablename,$whereNew);//先执行回收站
            }
            $SQL    = "DELETE FROM `" . $this->def . $tablename . "` ".$whereNew." ".$limit;
        }else{
            return false;
        }
        $this->db->query("set `sql_mode`=''");
        return $this->db->query($SQL);
    }
    function DB_delete_all($tablename, $where, $limit = 'limit 1', $pecial = '', $norecycle = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if (empty($where)) {
            return FALSE;
        }
        if ($pecial != $tablename) {
            //快速创建简历保存数据不进入回收站
            if (!in_array($tablename, array('temporary_resume')) && $norecycle != '1') {
                $this->insert_recycle($tablename, $this->site_fetchsql($where, $tablename));//先执行回收站
            }
            $SQL = "DELETE FROM `" . $this->def . $tablename . "` WHERE " . $this->site_fetchsql($where, $tablename) . " $limit";
        } else {
            //快速创建简历保存数据不进入回收站
            if (!in_array($tablename, array('temporary_resume')) && $norecycle != '1') {
                $this->insert_recycle($tablename, $where);//先执行回收站
            }
            $SQL = "DELETE FROM `" . $this->def . $tablename . "` WHERE " . $where . " $limit";
        }
        $this->db->query("set `sql_mode`=''");
        return $this->db->query($SQL);
    }
    /**
     * @desc 删除数据库
     * @param    $tablename    数据表名;
     * $where        删除数据表数据查询条件;
     * $limit        删除记录数
     * $pecial        暂未发现使用
     * $norecycle    1:不做回收站插入操作
     */
    function delete_all($tablename, $where = array(), $limit = 'limit 1', $special = '', $norecycle = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        include(PLUS_PATH . 'dbstruct.cache.php');
        if ($this->siteadmindir && $special == '') {
            if (in_array($tablename, $this->sitetable)) {
                if (is_numeric($this->config['did'])) {
                    $where['did'] = $this->config['did'];
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        if (!empty($whereNew)) {
            //快速创建简历保存数据不进入回收站
            if (!in_array($tablename, array('temporary_resume')) && $norecycle != '1') {
                $this->insert_recycle($tablename, $whereNew);//先执行回收站
            }
            $SQL = "DELETE FROM `" . $this->def . $tablename . "` " . $whereNew . " " . $limit;
        } else {
            return FALSE;
        }
        $this->db->query("set `sql_mode`=''");
        return $this->db->query($SQL);
    }
    /**
     * 删除进入回收站
     *
@@ -667,645 +685,652 @@
     * @param $where
     * @return bool
     */
    function insert_recycle($tablename, $where)
    {
    function insert_recycle($tablename, $where) {
        if (!$this->checkTableName($tablename)) {
            return false;
            return FALSE;
        }
        //回收站同一次操作生成数据MD5用作识别同一次操作的标识符
        if (!$this->__isset('recyclemd5')) {
            $recyclemd5 =   md5($tablename.$where);
            $recyclemd5 = md5($tablename . $where);
            $this->__set('recyclemd5', $recyclemd5);
        } else {
            //获取当前操作模块的统一标识符
            $recyclemd5 =   $this->__get('recyclemd5');
            $recyclemd5 = $this->__get('recyclemd5');
        }
        if (!isset($_GET['isdel']) || $_GET['isdel'] != "all") {
            $value  =   "tablename = '" . $tablename . "', ";
            $value  .=   "ctime = '" . time() . "', ";
            $value = "tablename = '" . $tablename . "', ";
            $value .= "ctime = '" . time() . "', ";
            if (isset($_SESSION['auid']) && isset($_SESSION['ausername']) && $_SESSION['auid'] && $_SESSION['ausername']) {
                $username   =   $_SESSION['ausername'];
                $uid        =   $_SESSION['auid'];
                $username = $_SESSION['ausername'];
                $uid = $_SESSION['auid'];
            } else {
                $username   =   isset($this->username) ? $this->username : '';
                $uid        =   isset($this->uid) ? $this->uid : '';
                $username = isset($this->username) ? $this->username : '';
                $uid = isset($this->uid) ? $this->uid : '';
            }
            $value  .=  "uid = '" . $uid . "', ";
            $value  .=  "username = '" . $username . "', ";
            $value  .=  "uri = '" . $_SERVER['REQUEST_URI'] . "', ";
            $query  =   $this->db->query("SELECT * FROM " . $this->def . $tablename . "  $where");
            $row_del=   array();
            $value .= "uid = '" . $uid . "', ";
            $value .= "username = '" . $username . "', ";
            $value .= "uri = '" . $_SERVER['REQUEST_URI'] . "', ";
            $query = $this->db->query("SELECT * FROM " . $this->def . $tablename . "  $where");
            $row_del = array();
            while ($row = $this->db->fetch_assoc($query)) {
                $row_del[]  =   $row;
                $row_del[] = $row;
            }
            if (!empty($row_del)) {
                foreach ($row_del as $delvalue) {
                    $this->DB_insert_once('recycle', $value . "`body`='" . serialize($delvalue) . "',`ident`='" . $recyclemd5 . "'");
                }
            }
        }
    }
    /**
     * 自定义SQL执行 便于多表联合、left join等组合查询语句
     */
    function DB_query_all($sql, $type = 'one')
    {
    function DB_query_all($sql, $type = 'one') {
        $this->db->query("set sql_mode=''");
        $query  =   $this->db->query($sql);
        $query = $this->db->query($sql);
        if ($type == 'all') {
            while ($row = $this->db->fetch_array($query)) {
                $return[]   =   $row;
                $return[] = $row;
            }
        } else {
            $return         =   $this->db->fetch_array($query);
            $return = $this->db->fetch_array($query);
        }
        return $return;
    }
    /**
    /**
     * 通用单条查询$tablename,$where = 1, $select="*"
     */
    function DB_select_once($tablename, $where = 1, $select = "*",$special='') {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        $cachename=$tablename.$where;
        if(!$return=$this->Memcache_set($cachename)){//获取是否存在memcache
            if($this->siteadmindir    &&    $special==''){
                $where = $this->site_fetchsql($where,$tablename);
            }
            $SQL = 'SELECT '.$select.' FROM ' . $this->def . $tablename;
            if($where)
            {
                $SQL .= ' WHERE '.$where;
            }
            $SQL .= ' LIMIT 1';
            $query = $this->db->query($SQL);
            $return=$this->db->fetch_array($query);
            $this->Memcache_set($cachename,$return);//设置memcache
        }
        return $return;
    }
    //新单条查询
    function select_once($tablename, $where = array(), $select = "*",$special='') {
        if(!$this->checkTableName($tablename)){
            return false;
        }
        if($this->siteadmindir && $special==''){
            if(in_array($tablename,$this->sitetable)){
                if(is_numeric($this->config['did'])){
                    $where['did']=$this->config['did'];
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        $cachename=$tablename.$whereNew;
        if(!$return=$this->Memcache_set($cachename)){//获取是否存在memcache
            /*if($this->siteadmindir    &&    $special==''){
                $whereNew = $this->site_fetchsql($whereNew,$tablename);
            }*/
            $SQL = 'SELECT '.$select.' FROM ' . $this->def . $tablename . $whereNew;
            $SQL .= ' LIMIT 1';
            $query = $this->db->query($SQL);
            $return=$this->db->fetch_array($query);
            $this->Memcache_set($cachename,$return);//设置memcache
        }
        return $return;
    }
    function member_log($content,$opera='',$type='',$uid=null,$usertype=null){//会员日志
        if(!$uid && !$usertype){
            $uid = intval($_COOKIE['uid']);
            $usertype = intval($_COOKIE['usertype']);
        }
        if($uid && $usertype){
            $value="`uid`='".$uid."',";
            $value.="`usertype`='".$usertype."',";
            $value.="`content`='".$content."',";
            $value.="`opera`='".$opera."',";
            $value.="`type`='".$type."',";
            $value.="`ip`='".fun_ip_get()."',";
            $value.="`ctime`='".time()."'";
            $this->DB_insert_once("member_log",$value);
        }
    }
    function FormatOptions($Options){
        if(!is_array($Options)){return array('field'=>'*','where'=>'');}
        $WhereStr='';
        if($Options['field']){
            $Field=$Options['field'];
            unset($Options['field']);
        }else{
            $Field='*';
    function DB_select_once($tablename, $where = 1, $select = "*", $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if($Options['special']){
            $special=$Options['special'];
        $cachename = $tablename . $where;
        if (!$return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            if ($this->siteadmindir && $special == '') {
                $where = $this->site_fetchsql($where, $tablename);
            }
            $SQL = 'SELECT ' . $select . ' FROM ' . $this->def . $tablename;
            if ($where) {
                $SQL .= ' WHERE ' . $where;
            }
            $SQL .= ' LIMIT 1';
            $query = $this->db->query($SQL);
            $return = $this->db->fetch_array($query);
            $this->Memcache_set($cachename, $return);//设置memcache
        }
        return $return;
    }
    //新单条查询
    function select_once($tablename, $where = array(), $select = "*", $special = '') {
        if (!$this->checkTableName($tablename)) {
            return FALSE;
        }
        if ($this->siteadmindir && $special == '') {
            if (in_array($tablename, $this->sitetable)) {
                if (is_numeric($this->config['did'])) {
                    $where['did'] = $this->config['did'];
                }
            }
        }
        $whereNew = $this->checkWhere($where);
        $cachename = $tablename . $whereNew;
        if (!$return = $this->Memcache_set($cachename)) {//获取是否存在memcache
            /*if($this->siteadmindir    &&    $special==''){
                $whereNew = $this->site_fetchsql($whereNew,$tablename);
            }*/
            $SQL = 'SELECT ' . $select . ' FROM ' . $this->def . $tablename . $whereNew;
            $SQL .= ' LIMIT 1';
            $query = $this->db->query($SQL);
            $return = $this->db->fetch_array($query);
            $this->Memcache_set($cachename, $return);//设置memcache
        }
        return $return;
    }
    function member_log($content, $opera = '', $type = '', $uid = NULL, $usertype = NULL) {//会员日志
        if (!$uid && !$usertype) {
            $uid = intval($_COOKIE['uid']);
            $usertype = intval($_COOKIE['usertype']);
        }
        if ($uid && $usertype) {
            $value = "`uid`='" . $uid . "',";
            $value .= "`usertype`='" . $usertype . "',";
            $value .= "`content`='" . $content . "',";
            $value .= "`opera`='" . $opera . "',";
            $value .= "`type`='" . $type . "',";
            $value .= "`ip`='" . fun_ip_get() . "',";
            $value .= "`ctime`='" . time() . "'";
            $this->DB_insert_once("member_log", $value);
        }
    }
    function FormatOptions($Options) {
        if (!is_array($Options)) {
            return array('field' => '*', 'where' => '');
        }
        $WhereStr = '';
        if ($Options['field']) {
            $Field = $Options['field'];
            unset($Options['field']);
        } else {
            $Field = '*';
        }
        if ($Options['special']) {
            $special = $Options['special'];
            unset($Options['special']);
        }
        if($Options['groupby']){
            $WhereStr.=' group by '.$Options['groupby'];
        if ($Options['groupby']) {
            $WhereStr .= ' group by ' . $Options['groupby'];
        }
        if($Options['orderby']){
            $WhereStr.=' order by '.$Options['orderby'];
        if ($Options['orderby']) {
            $WhereStr .= ' order by ' . $Options['orderby'];
        }
        if($Options['desc']){
            $WhereStr.=" ".$Options['desc'];
        if ($Options['desc']) {
            $WhereStr .= " " . $Options['desc'];
        }
        if($Options['limit']){
            $WhereStr.=' limit '.$Options['limit'];
        if ($Options['limit']) {
            $WhereStr .= ' limit ' . $Options['limit'];
        }
        return array('field'=>$Field,'order'=>$WhereStr,"special"=>$special);
        return array('field' => $Field, 'order' => $WhereStr, "special" => $special);
    }
    function FormatWhere($Where){
        $WhereStr='1';
        foreach($Where as $k=>$v){
    function FormatWhere($Where) {
        $WhereStr = '1';
        foreach ($Where as $k => $v) {
            //两种方式:1,'uid'=>1 ; 2,'`uid` in (1,2,3)'
            //TODO:检查字段是否存在
            if(is_numeric($k)){
                if((substr(trim($v),0,3)=='and')||(substr(trim($v),0,2)=='or')){
                    $WhereStr.=' '.$v;
                }elseif($v){
                    $WhereStr.=' and '.$v;
            if (is_numeric($k)) {
                if ((substr(trim($v), 0, 3) == 'and') || (substr(trim($v), 0, 2) == 'or')) {
                    $WhereStr .= ' ' . $v;
                } elseif ($v) {
                    $WhereStr .= ' and ' . $v;
                }
            }else{
                /* where允许的格式:
                    $where = array('uid' => $this->uid,
                        'name <> ' => '',
                        'age > '   => '18',
                        'height <' => '65'
                    );
                */
                if(strpos($k,'<>') > 0){
                    $position = strpos($k,'<>');
                    $fieldName = trim(substr($k,0,$position));
                    $WhereStr .=' and `'.$fieldName.'` <> \''.$v.'\'';
                }
                elseif(strpos($k,'<') > 0){
                    $position = strpos($k,'<');
                    $fieldName = trim(substr($k,0,$position));
                    $WhereStr .=' and `'.$fieldName.'` < \''.$v.'\'';
                }
                elseif(strpos($k,'>') > 0){
                    $position = strpos($k,'>');
                    $fieldName = trim(substr($k,0,$position));
                    $WhereStr .=' and `'.$fieldName.'` > \''.$v.'\'';
                }
                else{
                    $WhereStr .=' and `'.$k.'`=\''.$v.'\'';
                }
            } else {
                /* where允许的格式:
                    $where = array('uid' => $this->uid,
                        'name <> ' => '',
                        'age > '   => '18',
                        'height <' => '65'
                    );
                */
                if (strpos($k, '<>') > 0) {
                    $position = strpos($k, '<>');
                    $fieldName = trim(substr($k, 0, $position));
                    $WhereStr .= ' and `' . $fieldName . '` <> \'' . $v . '\'';
                } elseif (strpos($k, '<') > 0) {
                    $position = strpos($k, '<');
                    $fieldName = trim(substr($k, 0, $position));
                    $WhereStr .= ' and `' . $fieldName . '` < \'' . $v . '\'';
                } elseif (strpos($k, '>') > 0) {
                    $position = strpos($k, '>');
                    $fieldName = trim(substr($k, 0, $position));
                    $WhereStr .= ' and `' . $fieldName . '` > \'' . $v . '\'';
                } else {
                    $WhereStr .= ' and `' . $k . '`=\'' . $v . '\'';
                }
            }
        }
        return $WhereStr;
    }
    function FormatValues($Values){
        $ValuesStr='';
        foreach($Values as $k=>$v){
    function FormatValues($Values) {
        $ValuesStr = '';
        foreach ($Values as $k => $v) {
            //两种方式:1,'uid'=>1 ; 2,'`uid` in (1,2,3)'
            //TODO:检查字段是否存在
            if(preg_match("/^[a-zA-Z0-9_]+$/",$k)){
                 if(preg_match('/^[0-9]+$/', $k)){
                    $FiledList = @explode(',',$v);
                    if(is_array($FiledList)){
                        foreach($FiledList as $Fv){
                            $FvList = @explode('=',$Fv);
                            if($FvList[1]){
                                    if(strpos($FvList[1],'+') > 0){
                                        $FiledV = @explode('+',$FvList[1]);
                                        $ValuesStr.=',`'.str_replace("`",'',$FvList[0]).'`=`'.str_replace("`",'',$FiledV[0]).'`+\''.intval(str_replace("'",'',$FiledV[1])).'\'';
                                    }
                                    if(strpos($FvList[1],'-') > 0){
                                        $FiledV = @explode('-',$FvList[1]);
                                        $ValuesStr.=',`'.str_replace("`",'',$FvList[0]).'`=`'.str_replace("`",'',$FiledV[0]).'`-\''.intval(str_replace("'",'',$FiledV[1])).'\'';
                                    }
                            }
                        }
                    }
                }else{
                    $ValuesStr.=',`'.$k.'`=\''.$v.'\'';
                }
            }
            if (preg_match("/^[a-zA-Z0-9_]+$/", $k)) {
                if (preg_match('/^[0-9]+$/', $k)) {
                    $FiledList = @explode(',', $v);
                    if (is_array($FiledList)) {
                        foreach ($FiledList as $Fv) {
                            $FvList = @explode('=', $Fv);
                            if ($FvList[1]) {
                                if (strpos($FvList[1], '+') > 0) {
                                    $FiledV = @explode('+', $FvList[1]);
                                    $ValuesStr .= ',`' . str_replace("`", '', $FvList[0]) . '`=`' . str_replace("`", '', $FiledV[0]) . '`+\'' . intval(str_replace("'", '', $FiledV[1])) . '\'';
                                }
                                if (strpos($FvList[1], '-') > 0) {
                                    $FiledV = @explode('-', $FvList[1]);
                                    $ValuesStr .= ',`' . str_replace("`", '', $FvList[0]) . '`=`' . str_replace("`", '', $FiledV[0]) . '`-\'' . intval(str_replace("'", '', $FiledV[1])) . '\'';
                                }
                            }
                        }
                    }
                } else {
                    $ValuesStr .= ',`' . $k . '`=\'' . $v . '\'';
                }
            }
        }
        return substr($ValuesStr,1);
        return substr($ValuesStr, 1);
    }
    //提醒处理
    function RemindDeal($TableName,$Values=array(),$Where=array()){
        if(!$this->checkTableName($TableName)){
            return false;
        }
        $ValuesStr  =   $this->FormatValues($Values);
        $WhereStr   =   $this->FormatWhere($Where);
        $this->DB_update_all($TableName,$ValuesStr,$WhereStr);
    //提醒处理
    function RemindDeal($TableName, $Values = array(), $Where = array()) {
        if (!$this->checkTableName($TableName)) {
            return FALSE;
        }
        $ValuesStr = $this->FormatValues($Values);
        $WhereStr = $this->FormatWhere($Where);
        $this->DB_update_all($TableName, $ValuesStr, $WhereStr);
    }
    function site_fetchsql($Where,$TableName,$SplitChar=' and '){
        if(!$this->checkTableName($TableName)){
            return false;
        }
        if(in_array($TableName,$this->sitetable)){
            if(is_array($Where)&&is_numeric($this->config['did'])){
                $Where['did']=$this->config['did'];
            }else if(is_numeric($this->config['did'])){
                $Where='`did`='.$this->config['did'].$SplitChar.$Where;
    function site_fetchsql($Where, $TableName, $SplitChar = ' and ') {
        if (!$this->checkTableName($TableName)) {
            return FALSE;
        }
        if (in_array($TableName, $this->sitetable)) {
            if (is_array($Where) && is_numeric($this->config['did'])) {
                $Where['did'] = $this->config['did'];
            } else if (is_numeric($this->config['did'])) {
                $Where = '`did`=' . $this->config['did'] . $SplitChar . $Where;
            }
        }
        return $Where;
    }
    //调用分页,$table表名,$where条件,$pageurl分页链接,$limit条数,$rowsname模板接收变量,$pagenavname分页模板接收变量
    function get_page($table,$where='',$pageurl='',$limit=20,$field='*',$rowsname='rows'){
        if(!$this->checkTableName($table)){
            return false;
        }
        $rows=array();
        $page=$_GET['page']<1?1:$_GET['page'];
        $ststrsql=($page-1)*$limit;
        $num=$this->DB_select_num($table,$where);
        if($num>$limit){
            $pages=ceil($num/$limit);
            $pagenav=Page($page,$num,$limit,$pageurl,$notpl=false,null);
        }
        $rows=$this->DB_select_all($table,$where.' limit '.$ststrsql.','.$limit,$field);
        return array('total'=>$num,'pagenav'=>$pagenav,$rowsname=>$rows);
    }
    function fetch_assoc(){
        return $this->db->fetch_assoc();
    }
    function checkTableName($table){
         if (preg_match('/^[_a-z]{2,30}$/i',$table)){
          return true;
         }else {
          return false;
         }
    }
    /*
    *    $data        :    where条件, 字符串value 默认==:$where[id] = '1';
    *                                数组  value:$where['id'] = array('>','1','or/and');根据传入的or and 异或查询 默认AND
    *    $key        :    PHPYUNBTW PHPYUNBTWEND 使用()组合优先级组合条件 如 (id>0 AND id<1)
    *    $whereNew    :    拼接后的SQL条件,默认以AND 连接
     */
    function checkWhere($where){
        $whereNew    =    '';
        if(!empty($where) && is_array($where)){
            $limit  =  '';
            if(!empty($where['limit'])){
                if(is_array($where['limit']))
                {
                    $limit    =    ' LIMIT '.(int)$where['limit'][0].','.(int)$where['limit'][1];
                }else{
                    $limit    =    ' LIMIT '.(int)$where['limit'];
                }
                unset($where['limit']);
            }
            $orderby  =  '';
            if(!empty($where['orderby'])){
                if(is_array($where['orderby']))
                {
                    $orderby    =    ' ORDER BY ';
                    foreach($where['orderby'] as $key=>$value){
    //调用分页,$table表名,$where条件,$pageurl分页链接,$limit条数,$rowsname模板接收变量,$pagenavname分页模板接收变量
    function get_page($table, $where = '', $pageurl = '', $limit = 20, $field = '*', $rowsname = 'rows') {
        if (!$this->checkTableName($table)) {
            
                        if($key>0)
                        {
                            $orderby    .=    ',';
                        }
                        $orders         =    @explode(',',$value);
                        $orderby    .=    $orders[0].' ';
                        $orderby    .=    strtoupper(trim($orders[1])) == 'ASC' ? 'ASC':'DESC';
                        $whereFiled[]    =    $orders[0];
                    }
                } elseif (stripos($where['orderby'], 'CASE WHEN') !== false)
                {
                    //CASE THEN END 条件排序
                    $orderby        =   ' ORDER BY '.$where['orderby'];
                    $whereFiled[]    =    'CASE';
                }else{
                    $orders         =    @explode(',',$where['orderby']);
                    $orderby     =    ' ORDER BY '.$orders[0].' ';
                    $orderby    .=    strtoupper(trim($orders[1])) == 'ASC' ? 'ASC':'DESC';
                    $whereFiled[]    =    $orders[0];
                }
                unset($where['orderby']);
            }
            if(!empty($where['orderbyfield'])){
                if(is_array($where['orderbyfield']) && count($where['orderbyfield']) == 2){
                    $orderby    =    ' ORDER BY field('.$where['orderbyfield'][0].','.$where['orderbyfield'][1].')';
                    $whereFiled[]    =    $where['orderbyfield'][0];
                }
                unset($where['orderbyfield']);
            }
            $groupby  =  $having =   '';
            if(!empty($where['groupby'])){
            return FALSE;
        }
        $rows = array();
        $page = $_GET['page'] < 1 ? 1 : $_GET['page'];
        $ststrsql = ($page - 1) * $limit;
        $num = $this->DB_select_num($table, $where);
        if ($num > $limit) {
            $pages = ceil($num / $limit);
            $pagenav = Page($page, $num, $limit, $pageurl, $notpl = FALSE, NULL);
        }
        $rows = $this->DB_select_all($table, $where . ' limit ' . $ststrsql . ',' . $limit, $field);
        return array('total' => $num, 'pagenav' => $pagenav, $rowsname => $rows);
    }
    function fetch_assoc() {
        return $this->db->fetch_assoc();
    }
    function checkTableName($table) {
        if (preg_match('/^[_a-z]{2,30}$/i', $table)) {
            return TRUE;
        } else {
            return FALSE;
        }
    }
    /*
    *    $data        :    where条件, 字符串value 默认==:$where[id] = '1';
    *                                数组  value:$where['id'] = array('>','1','or/and');根据传入的or and 异或查询 默认AND
    *    $key        :    PHPYUNBTW PHPYUNBTWEND 使用()组合优先级组合条件 如 (id>0 AND id<1)
    *    $whereNew    :    拼接后的SQL条件,默认以AND 连接
     */
    function checkWhere($where) {
        $whereNew = '';
        if (!empty($where) && is_array($where)) {
            $limit = '';
            if (!empty($where['limit'])) {
                
                //   GROUP BY    和   HAVING 联合查询
                //   $key    :   having ;    $value  :   array();
                //   例如            :     array('having' => array('distance' => array('<', 20, ''), 'x' => array('<>', 0, 'AND')))
                if (!empty($where['having'])) {
                    $groupby        =    ' GROUP  BY '.$where['groupby'];
                    $whereFiled[]    =    $where['groupby'];
                    foreach ($where['having'] as $key => $value){
                        if (is_array($value)) {
                            //   HAVING 多条件查询; $value[2] : 异或查询
                            if($value[2] == 'OR' || $value[2] == 'or'){
                                $btnAndOR    =   ' OR ';
                            }else if($value[2] == 'AND' || $value[2] == 'and'){
                                $btnAndOR    =   ' AND ';
                            }else{
                                $btnAndOR    =   '';
                            }
                            $having  =   $btnAndOR;
                            $having  .=  $this->spilceWhere($key, $value);
                            $whereFiled[]    =    $key;
                        }
                    }
                    $groupby    .=    ' HAVING '.$having;
                    unset($where['having']);
                }else{
                    $groupby    =    ' GROUP  BY '.$where['groupby'];
                    $whereFiled[] = $where['groupby'];
                }
                unset($where['groupby']);
            }
            foreach($where as $key=>$value){
                //PHPYUNBTWSTART_A  PHPYUNBTWEND_A  PHPYUNBTWSTART_B  PHPYUNBTWEND_B 这种可以组成多个()
                // PHPYUNBTWSTART_A_DOUBLE、PHPYUNBTWEND_B_DOUBLE 考虑有需要多重括号的方式,增加此种写法
                //考虑到部分需要使用()执行优先级条件查询判断的情况
                if(strpos($key, 'PHPYUNBTWSTART') !== false){
                    if($whereNew!='')
                    {
                        $btwAndOr    =    ($value=='OR' || $value == 'or') ?' OR ':' AND ';
                    }else{
                        $btwAndOr    =    '';
                    }
                    $whereNew .=    $btwAndOr.'(';
                    // 带_DOUBLE为需要一个多的开始括号情况
                    if(strpos($key, '_DOUBLE') !== false){
                        $whereNew .=  '(';
                    }
                    //标识符 用于判断是否是()内首项条件 非首项条件 必须使用 AND/OR 连接
                    $btwStr    =    1;
                }elseif(strpos($key, 'PHPYUNBTWEND') !== false){
                    $whereNew .=    ')';
                    // 带_DOUBLE为需要一个多的结束括号情况
                    if(strpos($key, '_DOUBLE') !== false){
                        $whereNew .=  ')';
                    }
                    //取消标识符
                    $btwStr    =    0;
                }else{
                    //where格式不为纯字符串,则按照操作符函数进行处理
                    if(!empty($value) && is_array($value))
                    {
                        //同一个字段 多项条件组合
                        if(is_array($value[0])){
                            foreach($value as $sonv){
                                if($whereNew!='' && $btwStr != 1)
                                {
                                    $whereNew    .=    ($sonv[2] == 'OR' || $sonv[2] == 'or') ? ' OR ' : ' AND ';
                                }
                                //根据value[0] 判断SQL操作符 并进行组合SQL语句
                                $whereNew    .=    $this->spilceWhere($key,$sonv);
                                $whereFiled[] = $key;
                                $btwStr    =    0;
                            }
                        }else{
                            if($whereNew!='' && $btwStr != 1)
                            {
                                $whereNew    .=    (isset($value[2]) && ($value[2] == 'OR' || $value[2] == 'or')) ? ' OR ' : ' AND ';
                            }
                            //根据value[0] 判断SQL操作符 并进行组合SQL语句
                            $whereNew    .=    $this->spilceWhere($key,$value);
                            $whereFiled[] = $key;
                        }
                    }else{
                        //首项条件 排除AND连接符
                        if($whereNew!='' && $btwStr != 1)
                        {
                            $whereNew .=' AND ';
                        }
                        //纯字符串格式默认为 = 操作符
                        $whereNew .= "`".$key."`='".$this->db->escape_string($value)."'";
                        $whereFiled[] = $key;
                    }
                    $btwStr    =    0;
                }
            }
        }
        // 验证字段
        if(!empty($whereFiled)){
            foreach($whereFiled as $value){
                if(!preg_match("/^[a-zA-Z0-9_`()]{1,30}$/",$value)){
                    $noFields = 1;
                    break;
                }
            }
        }
        if(!isset($noFields)){
            if($whereNew)
            {
                $whereNew    =    ' WHERE '.$whereNew;
            }
            $whereNew    .=    $groupby.$orderby.$limit;
            return $whereNew;
        }else{
            $this->db->show_error();
        }
    }
    function spilceWhere($daraKey,$dataV){
        $Operator = array('=','>','>=','<','<=','<>','in','notin','isnull','notnull','like','findin','between','unixtime','like%','dateformat','in_s','regexp');
        if(in_array($dataV[0],$Operator)){
            switch($dataV[0]){
                case    'notin'        : $sqlString = "`$daraKey` not in (".$this->db->escape_string($dataV[1]).")";
                break;
                case    'in'        : $sqlString = "`$daraKey`  in (".$dataV[1].")";
                break;
                case    'isnull'    : $sqlString = "`$daraKey` is null";
                break;
                case    'notnull'    : $sqlString = "`$daraKey` is not null";
                break;
                case    'like'        : $sqlString = "`$daraKey` LIKE ('%".$this->db->escape_string($dataV[1])."%')";
                break;
                case    'findin'    : $sqlString = "FIND_IN_SET('".$this->db->escape_string($dataV[1])."',`$daraKey`)";
                break;
                case    'between'    : $betweens = explode(',', $dataV[1]);$sqlString = "$daraKey between $betweens[0] AND $betweens[1]";
                break;
                case    'unixtime'  : $sqlString =  "UNIX_TIMESTAMP(`$daraKey`) ".$this->db->escape_string($dataV[1])." '$dataV[2]'";
                break;
                case    'like%'        : $sqlString = "`$daraKey` LIKE ('".$this->db->escape_string($dataV[1])."%')";
                break;
                case    'dateformat': $sqlString = "date_format(`$daraKey`,'".$dataV[1]."')=date_format(now(),'".$this->db->escape_string($dataV[1])."')";
                break;
                // 字符串型的in
                case    'in_s'        : $sqlString = "`$daraKey`  in ('".$dataV[1]."')";
                break;
                // 处理值匹配
                case    'regexp'    : $sqlString = "(`$daraKey` REGEXP '".$dataV[1]."')=0";
                break;
                default                :
                    // 传入字段中包含sql函数的,两边不需要加`
                    $keystr     =  !preg_match("/[)]/",$daraKey) ? "`$daraKey` " : "$daraKey ";
                    $sqlString  =  $keystr.$this->db->escape_string($dataV[0])." '$dataV[1]'";
            }
        }else{
            $this->db->show_error();
        }
        return $sqlString;
    }
    function uc_open(){
        include APP_PATH.'data/api/uc/config.inc.php';
        include APP_PATH.'/api/uc/include/db_mysql.class.php';
        include APP_PATH.'/api/uc/uc_client/client.php';
        return $ucinfo;
    }
                if (is_array($where['limit'])) {
                    $limit = ' LIMIT ' . (int)$where['limit'][0] . ',' . (int)$where['limit'][1];
                } else {
                    $limit = ' LIMIT ' . (int)$where['limit'];
                }
                unset($where['limit']);
            }
            $orderby = '';
            if (!empty($where['orderby'])) {
                if (is_array($where['orderby'])) {
                    $orderby = ' ORDER BY ';
                    foreach ($where['orderby'] as $key => $value) {
                        if ($key > 0) {
                            $orderby .= ',';
                        }
                        $orders = @explode(',', $value);
                        $orderby .= $orders[0] . ' ';
                        $orderby .= strtoupper(trim($orders[1])) == 'ASC' ? 'ASC' : 'DESC';
                        $whereFiled[] = $orders[0];
                    }
                } elseif (stripos($where['orderby'], 'CASE WHEN') !== FALSE) {
                    //CASE THEN END 条件排序
                    $orderby = ' ORDER BY ' . $where['orderby'];
                    $whereFiled[] = 'CASE';
                } else {
                    $orders = @explode(',', $where['orderby']);
                    $orderby = ' ORDER BY ' . $orders[0] . ' ';
                    $orderby .= strtoupper(trim($orders[1])) == 'ASC' ? 'ASC' : 'DESC';
                    $whereFiled[] = $orders[0];
                }
                unset($where['orderby']);
            }
            if (!empty($where['orderbyfield'])) {
                if (is_array($where['orderbyfield']) && count($where['orderbyfield']) == 2) {
                    $orderby = ' ORDER BY field(' . $where['orderbyfield'][0] . ',' . $where['orderbyfield'][1] . ')';
                    $whereFiled[] = $where['orderbyfield'][0];
                }
                unset($where['orderbyfield']);
            }
            $groupby = $having = '';
            if (!empty($where['groupby'])) {
                //   GROUP BY    和   HAVING 联合查询
                //   $key    :   having ;    $value  :   array();
                //   例如            :     array('having' => array('distance' => array('<', 20, ''), 'x' => array('<>', 0, 'AND')))
                if (!empty($where['having'])) {
                    $groupby = ' GROUP  BY ' . $where['groupby'];
                    $whereFiled[] = $where['groupby'];
                    foreach ($where['having'] as $key => $value) {
                        if (is_array($value)) {
                            //   HAVING 多条件查询; $value[2] : 异或查询
                            if ($value[2] == 'OR' || $value[2] == 'or') {
                                $btnAndOR = ' OR ';
                            } else if ($value[2] == 'AND' || $value[2] == 'and') {
                                $btnAndOR = ' AND ';
                            } else {
                                $btnAndOR = '';
                            }
                            $having = $btnAndOR;
                            $having .= $this->spilceWhere($key, $value);
                            $whereFiled[] = $key;
                        }
                    }
                    $groupby .= ' HAVING ' . $having;
                    unset($where['having']);
                } else {
                    $groupby = ' GROUP  BY ' . $where['groupby'];
                    $whereFiled[] = $where['groupby'];
                }
                unset($where['groupby']);
            }
            foreach ($where as $key => $value) {
                //PHPYUNBTWSTART_A  PHPYUNBTWEND_A  PHPYUNBTWSTART_B  PHPYUNBTWEND_B 这种可以组成多个()
                // PHPYUNBTWSTART_A_DOUBLE、PHPYUNBTWEND_B_DOUBLE 考虑有需要多重括号的方式,增加此种写法
                //考虑到部分需要使用()执行优先级条件查询判断的情况
                if (strpos($key, 'PHPYUNBTWSTART') !== FALSE) {
                    if ($whereNew != '') {
                        $btwAndOr = ($value == 'OR' || $value == 'or') ? ' OR ' : ' AND ';
                    } else {
                        $btwAndOr = '';
                    }
                    $whereNew .= $btwAndOr . '(';
                    // 带_DOUBLE为需要一个多的开始括号情况
                    if (strpos($key, '_DOUBLE') !== FALSE) {
                        $whereNew .= '(';
                    }
                    //标识符 用于判断是否是()内首项条件 非首项条件 必须使用 AND/OR 连接
                    $btwStr = 1;
                } elseif (strpos($key, 'PHPYUNBTWEND') !== FALSE) {
                    $whereNew .= ')';
                    // 带_DOUBLE为需要一个多的结束括号情况
                    if (strpos($key, '_DOUBLE') !== FALSE) {
                        $whereNew .= ')';
                    }
                    //取消标识符
                    $btwStr = 0;
                } else {
                    //where格式不为纯字符串,则按照操作符函数进行处理
                    if (!empty($value) && is_array($value)) {
                        //同一个字段 多项条件组合
                        if (is_array($value[0])) {
                            foreach ($value as $sonv) {
                                if ($whereNew != '' && $btwStr != 1) {
                                    $whereNew .= ($sonv[2] == 'OR' || $sonv[2] == 'or') ? ' OR ' : ' AND ';
                                }
                                //根据value[0] 判断SQL操作符 并进行组合SQL语句
                                $whereNew .= $this->spilceWhere($key, $sonv);
                                $whereFiled[] = $key;
                                $btwStr = 0;
                            }
                        } else {
                            if ($whereNew != '' && $btwStr != 1) {
                                $whereNew .= (isset($value[2]) && ($value[2] == 'OR' || $value[2] == 'or')) ? ' OR ' : ' AND ';
                            }
                            //根据value[0] 判断SQL操作符 并进行组合SQL语句
                            $whereNew .= $this->spilceWhere($key, $value);
                            $whereFiled[] = $key;
                        }
                    } else {
                        //首项条件 排除AND连接符
                        if ($whereNew != '' && $btwStr != 1) {
                            $whereNew .= ' AND ';
                        }
                        //纯字符串格式默认为 = 操作符
                        $whereNew .= "`" . $key . "`='" . $this->db->escape_string($value) . "'";
                        $whereFiled[] = $key;
                    }
                    $btwStr = 0;
                }
            }
        }
        // 验证字段
        if (!empty($whereFiled)) {
            foreach ($whereFiled as $value) {
                if (!preg_match("/^[a-zA-Z0-9_`()]{1,30}$/", $value)) {
                    $noFields = 1;
                    break;
                }
            }
        }
        if (!isset($noFields)) {
            if ($whereNew) {
                $whereNew = ' WHERE ' . $whereNew;
            }
            $whereNew .= $groupby . $orderby . $limit;
            return $whereNew;
        } else {
            $this->db->show_error();
        }
    }
    function spilceWhere($daraKey, $dataV) {
        $Operator = array('=', '>', '>=', '<', '<=', '<>', 'in', 'notin', 'isnull', 'notnull', 'like', 'findin', 'between', 'unixtime', 'like%', 'dateformat', 'in_s', 'regexp');
        if (in_array($dataV[0], $Operator)) {
            switch ($dataV[0]) {
                case    'notin'        :
                    $sqlString = "`$daraKey` not in (" . $this->db->escape_string($dataV[1]) . ")";
                    break;
                case    'in'        :
                    $sqlString = "`$daraKey`  in (" . $dataV[1] . ")";
                    break;
                case    'isnull'    :
                    $sqlString = "`$daraKey` is null";
                    break;
                case    'notnull'    :
                    $sqlString = "`$daraKey` is not null";
                    break;
                case    'like'        :
                    $sqlString = "`$daraKey` LIKE ('%" . $this->db->escape_string($dataV[1]) . "%')";
                    break;
                case    'findin'    :
                    $sqlString = "FIND_IN_SET('" . $this->db->escape_string($dataV[1]) . "',`$daraKey`)";
                    break;
                case    'between'    :
                    $betweens = explode(',', $dataV[1]);
                    $sqlString = "$daraKey between $betweens[0] AND $betweens[1]";
                    break;
                case    'unixtime'  :
                    $sqlString = "UNIX_TIMESTAMP(`$daraKey`) " . $this->db->escape_string($dataV[1]) . " '$dataV[2]'";
                    break;
                case    'like%'        :
                    $sqlString = "`$daraKey` LIKE ('" . $this->db->escape_string($dataV[1]) . "%')";
                    break;
                case    'dateformat':
                    $sqlString = "date_format(`$daraKey`,'" . $dataV[1] . "')=date_format(now(),'" . $this->db->escape_string($dataV[1]) . "')";
                    break;
                // 字符串型的in
                case    'in_s'        :
                    $sqlString = "`$daraKey`  in ('" . $dataV[1] . "')";
                    break;
                // 处理值匹配
                case    'regexp'    :
                    $sqlString = "(`$daraKey` REGEXP '" . $dataV[1] . "')=0";
                    break;
                default                :
                    // 传入字段中包含sql函数的,两边不需要加`
                    $keystr = !preg_match("/[)]/", $daraKey) ? "`$daraKey` " : "$daraKey ";
                    $sqlString = $keystr . $this->db->escape_string($dataV[0]) . " '$dataV[1]'";
            }
        } else {
            $this->db->show_error();
        }
        return $sqlString;
    }
    function uc_open() {
        include APP_PATH . 'data/api/uc/config.inc.php';
        include APP_PATH . '/api/uc/include/db_mysql.class.php';
        include APP_PATH . '/api/uc/uc_client/client.php';
        return $ucinfo;
    }
}
?>
data/plus/config.php
File was deleted
data/templates_c/0c53cfd9620c77bb7a42c2434fc6334e7ee3fe10.file.admin_comtpl.htm.php
File was deleted
data/templates_c/11c4a26fe7d1c9b502850cb82316cf562855141e.file.admin_member.htm.php
File was deleted
data/templates_c/13a4aad0a34df68d47f0e3bd4cdba4250206e0d0.file.verify_js.htm.php
File was deleted
data/templates_c/1c4998f09b9e4bb1ce0819e8ef1283198b6a149f.file.admin_member_comadd.htm.php
File was deleted
data/templates_c/1da5f3b8d4305ec58657ab7e24ce3078930c687c.file.backtop.htm.php
File was deleted
data/templates_c/244e9855ebbf46b76c35cc130280718204a203b7.file.search.htm.php
File was deleted
data/templates_c/27a6b2af0295fe23df2ef67e29eaea98bb3be36b.file.admin_user_add.htm.php
File was deleted
data/templates_c/2efa76dce73e456116002b5a79988ad4ded0c1d9.file.admin_description_add.htm.php
File was deleted
data/templates_c/36cfde62cc62f78020700c7a43b59208f3639d41.file.admin_makenews.htm.php
File was deleted
data/templates_c/4b076adc0d40c26df5e4ec37621fc73116c60a09.file.admin_city.htm.php
File was deleted
data/templates_c/55fb59665d037e88b25461324b7b6415877bf6bd.file.index.htm.php
File was deleted
data/templates_c/567fedba9f84d83f3de3f965668ecbfe009877cf.file.search.htm.php
File was deleted
data/templates_c/56ae993870cd60af1ac02627c05814bbfd30581a.file.admin_message.htm.php
File was deleted
data/templates_c/59e1e0820792c5de4212c43421b7f56db2e5fe91.file.footer.htm.php
File was deleted
data/templates_c/603d4de05786c50b2bf0d3d458bb5eeef4f4f0fb.file.firm_search.htm.php
File was deleted
data/templates_c/643a77cfea3409d4f5b6e0a4a08a8cc5974a4320.file.admin_user_list.htm.php
File was deleted
data/templates_c/680e04d273a3dd0f8ddb8679579421f092d19229.file.admin_description.htm.php
File was deleted
data/templates_c/69f5b2f337040ab27e994ddeb43b3eb281388bc2.file.member_send_email.htm.php
File was deleted
data/templates_c/6f71af4e84b724c5fcef767654693754e83199de.file.login.htm.php
File was deleted
data/templates_c/70470c950ce5578bbbd9077ceec58382367e8dfc.file.index.htm.php
File was deleted
data/templates_c/78c0d883f755d092b66bb69b4de9fcc57fb77c19.file.admin_industry.htm.php
File was deleted
data/templates_c/7c5534854000a9770ba1b00399788ddf76ce79f1.file.admin_right_web.htm.php
File was deleted
data/templates_c/7fad852e220f05269cb70d35def311ecb46320e5.file.index_header.htm.php
File was deleted
data/templates_c/844a7391c57137a67f3ef1e5f57351b437aa2e44.file.header.htm.php
File was deleted
data/templates_c/84c393276c827b025457c7655dcc77fc4d0fe482.file.admin_style_list.htm.php
File was deleted
data/templates_c/89b218e55d5ea3ef51fe5e74b1f07bf13ade6f52.file.crm_public.htm.php
File was deleted
data/templates_c/8ead6a04918b6611fea3d0a9ff7ddc2c9fb7aa67.file.changeutype.htm.php
File was deleted
data/templates_c/8f1992510c820a625ae20dc11cc97473e2e9506d.file.admin_news_list.htm.php
File was deleted
data/templates_c/92d4cc030673bf28dc16fbc558f6fb14aea8c583.file.topfour_list.htm.php
File was deleted
data/templates_c/942b1af51daf9555bfae11257fb3ff355b916d82.file.admin_web_config.htm.php
File was deleted
data/templates_c/96886e946ca00ad9425159b3b1c37256e999e16b.file.admin_descclass.htm.php
File was deleted
data/templates_c/9aa269d49f5808d4c8652e385a772866e25c3c20.file.web_config.htm.php
File was deleted
data/templates_c/a26ea299e121f1c6ae6868e82b35b1fa9843093e.file.checkdomain.htm.php
File was deleted
data/templates_c/bbe37c552ad210165d8d711871d36cae7adc6df6.file.index.htm.php
File was deleted
data/templates_c/c06c62faa1c191544eece3fbedc66e059f2cab81.file.admin_myuser.htm.php
File was deleted
data/templates_c/c32bb702ce1cfaf01d5a51b472f6d406c77b5407.file.admin_userclass.htm.php
File was deleted
data/templates_c/c6b248bdf4e16306c55fe3ea3e0cc660bafb9f2f.file.admin_model_config.htm.php
File was deleted
data/templates_c/cc863ec85d93dc03912af0a1f91c359543ad5131.file.admin_domain_config.htm.php
File was deleted
data/templates_c/d185eb9fb3f5e0e2f2217e255a7b35b29c523c21.file.admin_right.htm.php
File was deleted
data/templates_c/d5f587720e2920b8f0b3b7d7a256da2a77d4240a.file.login.htm.php
File was deleted
data/templates_c/d6f831c1f0620e090932efd34d3ec6be3c06e54a.file.admin_resumetpl.htm.php
File was deleted
data/templates_c/df1c9da67eefc370faf1f7d60a3e2a65a54b0759.file.admin_reward.htm.php
File was deleted
data/templates_c/df324bff9cd508c18553c8a74f5c2c4f445f4a46.file.admin_company.htm.php
File was deleted
data/templates_c/e07e6d79d2f7dadaed434b33af44500b85a4b913.file.admin_search.htm.php
File was deleted
data/templates_c/e81a185a5882542bcab41612413ad9e6a40b813b.file.index_search.htm.php
File was deleted
data/templates_c/e8eb7d27f330b71c0eb944709c031f8cdc47c231.file.crm_index.htm.php
File was deleted
data/templates_c/e986efe7bf7e5328177e4d211979c0c68efd9edd.file.login.htm.php
File was deleted
data/templates_c/ea66f1685e4801c2a655bb775fbd4a9e07cb7aff.file.admin_navmap.htm.php
File was deleted
data/templates_c/edf202bd6aa332c1ea343ab903fee9e0bab7e52f.file.add_class.htm.php
File was deleted