phpcms v9代码剖析一
发布:smiling 来源: PHP粉丝网 添加日期:2014-03-16 17:53:59 浏览: 评论:0
一、数据库加载:
数据库配置文件:安装时填写的数据库配置数据存储在caches/configs/database.php
(1)index.php入库文件,并加载phpcms/base.php。
(2)index.php文件:pc_base::creat_app();
(3)phpcms/libs/classes/application.class.php:$controller = $this->load_controller();
默认加载:phpcms\modules\content\index.php
(4)phpcms\modules\content\index.php:$this->db = pc_base::load_model('content_model');
加载文件:phpcms/model/content_model.class.php
(5)phpcms/model/content_model.class.php:$this->db_config = pc_base::load_config('database');
(6)加载配置文件:caches/configs/database.php
二、模板解析:
文件:phpcms/libs/functions/global.func.php
调用:include template($module,$template);
模板缓存文件:phpcms/libs/classes/template_cache.class.php
template_compile:模板编译函数
三、用户登录模块(phpsso关联)
1、phpcms/modules/member/index.php
登陆操作:login()
$status = $this->client->ps_member_login($username, $password);//phpsso中判断用户登陆,正确返回用户数据array,如果本地用户信息不存在,则插入数据,保持数据一致.
$synloginstr = $this->client->ps_member_synlogin($r['phpssouid']);//phpsso用户同步登陆函数
//==========其余分析至[phpsso通信]==========
四、用户注册模块(phpsso关联)
1、phpcms/modules/member/index.php
注册操作:register()
- $this->_session_start();//加载phpcms/libs/classes/session_mysql.class.php
- $member_setting = getcache('member_setting');//加载用户配置
- ...
- $siteid = isset($_REQUEST['siteid']) && trim($_REQUEST['siteid']) ? intval($_REQUEST['siteid']) : 1;//默认siteid为1
- ...
- $this->_init_phpsso();//加载phpcms/modules/member/classes/client.class.php
- //phpcms/base.php中load_app_class()函数的defined("ROUTE_M")来至于phpcms/libs/classes/application.class.php
- ...
- $status = $this->client->ps_member_register($userinfo['username'], $userinfo['password'], $userinfo['email'], $userinfo['regip'], $userinfo['encrypt']);//phpsso中添加注册用户,返回phpssouid
- ...
- $userid = $this->db->insert($userinfo, 1);//本地用户数据添加。密码加密存储
五、后台部分整理
1、口令卡(移除)
配置文件:caches/configs/system.php
后台登陆/退出:phpcms/modules/admin/index.php
后台管理:phpcms/modules/admin/admin_manage.php
口令卡类:phpcms/modules/admin/classes/card.class.php
管理员类:phpcms/modules/admin/classes/admin.class.php
语言文件:phpcms/languages/zh-cn/admin.lang.php
phpcms/languages/zh-cn/system_menu.lang.php
模板文件:phpcms/modules/admin/templates/admin_list.tpl.php
phpcms/modules/admin/templates/login_card.tpl.php
phpcms/modules/admin/templates/admin_card.tpl.php
2、后台登陆
phpcms/modules/admin/classes/admin.class.php
常规下加载phpcms/libs/classes/session_mysql.class.php
...session_start();//开启session
phpcms/modules/admin/classes/admin.class.php
状态判断:check_admin()
phpcms/modules/admin/index.php
登陆操作:login()
Tags: phpcms v9 代码剖析
相关文章
- ·phpcms数据库操作(2013-11-15)
- ·phpcms的安装和卸载文件(2013-11-15)
- ·phpcms 模版源码分析(2013-11-15)
- ·phpcms更新首页(2013-11-15)
- ·PHPCMS 采集规则(2013-11-15)
- ·phpcms 仿站小结(2013-11-15)
- ·phpcms数据结构(2013-11-15)
- ·让PHPCms内容页支持JavaScript(2013-11-15)
- ·phpcms v9 二次开发记录(2014-01-09)
- ·phpcms v9 添加内容出现500错误(2014-01-09)
- ·PHPCMS v9修改默认后台登录地址(2014-01-09)
- ·phpcms v9搜索标题中含有的很多关键词都没有搜索结果?(2014-01-09)
- ·phpcms V9 在首页中调用友情链接分类(2014-01-09)
- ·Phpcms V9缩略图上传失败问题解决办法(2014-03-16)
- ·phpcmsv9 内容页调用{date('Y-m-d',time($inputtime))} 结果为1970-01-01. (2014-06-10)
- ·PHPCMS更新栏目缓存失败的解决办法(2014-06-10)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)