phpcms v9去掉phpsso修改方案,后台可以直接关闭
phpsso一直是被phpsso使用者所诟病,因为对于大多数企业站来说,是不需要多应用登录的,因此也就用不到phpsso,但是phpcms官方并没有设计一个开关之类的东西,而是强制使用phpsso,强制也就算了,而我们常常又会被phpsso的“通讯”拦住,因此很多人都想着怎么去除phpsso,让会员功能不再依赖phpsso。可恶的phpsso很让人抓狂,并且获取用户头像比较麻烦,因为默认的phpsso的头像是不入库的,因此读取比较困难,所以决定砍掉phpsso

【注意】
(1)去掉phpsso修改,可以满足后台一键关闭phpsso,而不影响注册和登录
(2)如果你之前开发过member模块,请慎重覆盖
(3)重构了获取会员头像上传,会员头像获取的方法,
(4)其他功能没有做过过多测试,欢迎测试反馈
【修改内容】
1、phpcms/modules/member文件夹下的
(1)member.php
(2)index.php
(3)member_verify.php
(4)classes/foreground.class.php
2、phpcms/templates/default/member文件夹下
(1)新增account_manage_avatarnew.html用作头像上传 account_manage_avatar.html
(2)account_manage_upgrade.html
(3)account_manage.html
(4)index.html
3、修改phpcms/libs/function下的global.fun.php的get_memberavatar
4 修复密码错误时候仍提示登录成功然后立马退出的情况
(1)给v9_member表增加一个字段avatar,用来存储头像,设置varchar类型。
(2)全面整改phpcms\modules\member模块,
解压直接覆盖member模块(记住覆盖之前做个备份)
(3)修改phpcms\template\member模板(如果做过开发慎重覆盖)主要是新增了上传头像的方法
(4)修改phpcms\libs\functions\global.func.php中的get_memberavatar方法改成:
1.function get_memberavatar($uid, $is_userid=’1′, $size=’30’) {
2. if($is_userid) {
3. $db = pc_base::load_model(‘member_model’);
4. $memberinfo = $db->get_one(array(‘userid’=>$uid));
5. if(isset($memberinfo[‘userid’])) {
6. $uid = $memberinfo[‘userid’];
7. $avatar = $memberinfo[‘avatar’];
8. } else {
9. return false;
10. }
11. }
12.}
根据以上修改,做测试,关闭phpsso之后,仍可以实现会员的注册于登录,目前暂未发现其他bug,。