discuzX3.2 用户注册接口代码

hykeda9年前PHP778
新建一个php文件在根目录,例:test.php test.php 具体内容:
error_reporting(0);

require_once './source/class/class_core.php';

require './config/config_ucenter.php';

include './uc_client/client.php';
包涵一些基础类进来。 注册方法:
public function register($arr){
global $_G;

//可以写一些调用验证解密在此处
$discuz = C::app();
$discuz->init();
//访问ucenter注册信息
$uid = uc_user_register(addslashes($arr['username']),$arr['password'], $arr['email'], '', '', $_G['clientip']);

if($uid <= 0) {
if($uid == -1) {
return $this->arrayToJson(0,'用户名不合法!');
} elseif($uid == -2) {
return $this->arrayToJson(0,'包含要允许注册的词语');
} elseif($uid == -3) {
return $this->arrayToJson(0,'用户名已经存在');
} elseif($uid == -4) {
return $this->arrayToJson(0,'Email 格式有误');
} elseif($uid == -5) {
return $this->arrayToJson(0,'Email 不允许注册');
} elseif($uid == -6) {
return $this->arrayToJson(0,'该 Email 已经被注册');
} else {
return $this->arrayToJson(0,'未定义');
}
} else {
$profile['field1']= $arr['自定义字段'];

//自主添加自定义字段,上面是例子
$init_arr = array('credits' => explode(',', '0,0,0,0,0,0,0,0'), 'profile'=>$profile, 'emailstatus' => $emailstatus);

//设置自定义用户组

$init_arr = array_merge($init_arr,array('ugroupids'=>$arr['ugroupids']));

$password = md5($arr['password']);
$groupid = 10; //设置默认用户组
$flag =C::t('common_member')->insert($uid,$arr['username'], $password, $arr['email'], $_G['clientip'], $groupid, $init_arr);

return '注册成功!';
}
}
注意:如果需要修改自定义用户组的话,需要在table_common_member.php文件的第287之后添加 'extgroupids'=>intval($extdata['ugroupids']) 这样就可以调用该接口注册到dz,可以判断各项条件等。 还开发了禁止登陆的功能,在此处就先不写了。如果有问题或者建议的朋友可以给我留言。  

相关文章

关于PHP获取IP地址的几种方法

获取客户端的ip地址有3中方式: 1.REMOTE_ADDR:浏览当前页面的用户计算机的ip地址 2.HTTP_X_FORWARDED_FOR: 记录代理信息,会把每一层代理都记录 3.HTTP_C...

file_get_contents和curl出现400 Bad Request问题

我在使用这两个函数抓取数据的时候出现了400错误,一开始以为是http和https的问题,以为https证书问题,忽略证书后还是报400,但是输入百度的网址都正常。 其实是url参数...

php 用curl 进行数据post给接口,如何将数据存放至body中传递

有个项目,将数据推送至接口文件,代码入下:$headers[]  =  "Accept:application/json";$headers[]  =...

百度经纬度和火星坐标转换

<?php     //GCJ-02...

简单的高精度计算函数

/** PHP高精度计算 * @param string $type * @param $n * ...

PHP防注入函数使用

htmlspecialchars 防止xss注入ENT_COMPAT - 默认。仅编码双引号。ENT_QUOTES - 编码双引号和单引号。ENT_NOQUOTES - 不编码任何引号。默认是只编码双...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。