<?php /* * Disucz!部分功能使用说明: */ /********************************************************************** 用户注册 ***************************************************************************/ /* uc_user_register接口只是把用户数据验证后插入到pre_ucenter_members表中 * 所以需要手动将数据同步到pre_common_member表中 */ if(!function_exists('uc_user_register')) { loaducenter(); } $uid = uc_user_register($nickname,$password,$email,'你的昵称加什么?',$nickname); if($uid > 0){ //同步用户 $uc_members = DB::fetch_all("select * from pre_ucenter_members where email = '$email' limit 1"); $uc_members = empty($uc_members[0]) ? '' : $uc_members[0]; if(!empty($uc_members)){ $com_mem_data = array('email'=>$uc_members['email'],'username'=>$uc_members['username'],'password'=>$uc_members['password'],'groupid'=>$define_group_id,'regdate'=>$uc_members['regdate'],'timeoffset'=>9999); DB::insert('common_member',$com_mem_data); } }else{ if($uid == -1) { die(json_encode(array('status'=>0,'msg'=>'用户名不合法'))); } elseif($uid == -2) { die(json_encode(array('status'=>0,'msg'=>'包含要允许注册的词语'))); } elseif($uid == -3) { die(json_encode(array('status'=>0,'msg'=>'用户名已经存在'))); } elseif($uid == -4) { die(json_encode(array('status'=>0,'msg'=>'Email 格式有误'))); } elseif($uid == -5) { die(json_encode(array('status'=>0,'msg'=>'Email 不允许注册'))); } elseif($uid == -6) { die(json_encode(array('status'=>0,'msg'=>'该 Email 已经被注册'))); } else{ die(json_encode(array('status'=>0,'msg'=>'注册失败'))); } } /*************************************************************** 用户登陆 ********************************************************************************/ /* 使用setloginstatus函数登陆, * 接受两个参数,pre_common_member用户记录,和记录cookie的时间 */ $members = DB::fetch_all("select * from pre_common_member where email = '$email' limit 1"); $member = empty($members[0]) ? '' : $members[0]; if( !empty($member) ){ //登陆成功,设置cookie,记录cookie 10年 setloginstatus($member,315360000); die(json_encode(array('status'=>1,'msg'=>'登录成功'))); }else{ die(json_encode(array('status'=>0,'msg'=>'登录失败'))); } /**************************************************************** 生成帖子 *******************************************************************************/ /* 生成帖子流程: * 1、从pre_forum_post_tableid获取生成帖子的tid * 2、构造pre_forum_thread表中数据,并插入到pre_forum_thread表中。pre_forum_thread表中数据保存帖子概要信息,用于显示帖子列表 * 3、构造pre_forum_post表中数据,并插入到pre_forum_post表中。pre_forum_post表中保存帖子的详情信息。无论是帖子,还是回复都是一条独立的pre_forum_post记录 */ $pid = C::t('forum_post_tableid')->insert(array('pid' => null), true); $thread_data = array( 'tid'=>$pid, //主题id 'fid'=>37, //栏目id 'author'=>$post_author, //作者 'authorid'=>$uid, //作者uid,是pre_common_member表中uid 'subject'=>$title, //标题 'dateline'=>time(), 'lastpost'=>time(), 'lastposter'=>$post_author, 'status'=>32 //状态 ); if( DB::insert('forum_thread',$thread_data) ){ //帖子内容 $message = "<div>test";$message .= "</div>"; $post_data = array( 'pid'=>$pid, //帖子id 'fid'=>37, //栏目id 'tid'=>$pid, //主题id 'first'=>1, //是否第一层 'author'=>$post_author, //作者 'authorid'=>$uid, //作者uid 'subject'=>$title, //标题 'dateline'=>time(), 'message'=>htmlspecialchars($message), //内容 'useip'=>$_G['clientip'], 'port' => '', 'usesig' => 1, 'bbcodeoff' => '-1', 'smileyoff' => '-1', 'tags' => '', 'position' => 1, //楼层数 'type' => 1, 'sort_order' => 2, 'list_content' => '' ); if( DB::insert('forum_post',$post_data) ){ //生成帖子成功 die(json_encode(array('status'=>1,'msg'=>$pid))); }else{ die(json_encode(array('status'=>1,'msg'=>'生成帖子失败'))); } }else{ die(json_encode(array('status'=>-1,'msg'=>'生成帖子失败'))); } ?>