dz论坛登录注册-dz论坛第三方登录注册

<?php
define('NOROBOT', FALSE);
define('ADMINSCRIPT', basename(__FILE__));
define('CURSCRIPT', 'admin');
define('HOOKTYPE', 'hookscript');
define('APPTYPEID', 0);
//define('CURMODULE', $mod);

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

$discuz = C::app();
$discuz->init();

require libfile('function/member');
require libfile('class/member');
runhooks();

//解密
function decode($data)
{
    $res =  base64_decode($data);
    return  explode('1234568899',$res)[1];
}

$newusername = trim($_GET['newusername']);
$newpassword = decode(trim($_GET['newpassword']));
$newemail = isset($_GET['newemail'])? strtolower(trim($_GET['newemail'])):$newusername.'@xxx.com';

if(!$newusername || !$newemail)
{
    showmessage('您目前未登录居利家网,暂时以游客身份只读访问论坛');
}

// 以下几句防止第3方伪造
$time= (int)($_GET["time"]);
$curdate= time();
$str= 'Pwa8R7M4S0yXTOXiIKYhFLrqAyeRkSpm';
$seckey= $time.$newusername.$str;
$seckey=  md5($seckey);
if($curdate-$time>1200 || $seckey!=$_GET['code'])
{
    showmessage('submit_invalid');
}

$_G['uid']='';
$userid=C::t('common_member')->fetch_uid_by_username($newusername);
$_SERVER['REQUEST_METHOD'] = 'POST';//注册需要模拟POST防止2次校验不通过
$_GET['formhash'] = formhash();// 防止 2次校验不通过
$_G['group']['seccode']='';// 防止 2次校验不通过

if(!$userid){// 没有找到对应用户则调用注册
    $_GET['regsubmit']='yes';
    $_GET['infloat']='yes';
    $_GET['lssubmit']='yes';
    $ctl_obj = new register_ctl();
    $ctl_obj->setting = $_G['setting'];
    $ctl_obj->template = 'member/register';

    $_GET[''.$ctl_obj->setting['reginput']['username']]=$newusername;
    $_GET[''.$ctl_obj->setting['reginput']['password']]= $newpassword;
    $_GET[''.$ctl_obj->setting['reginput']['password2']]= $newpassword;
    $_GET[''.$ctl_obj->setting['reginput']['email']] =$newemail;

    $ctl_obj->on_register();
}

//uc_user_synlogout();
$_G['groupid'] = $_G['member']['groupid'] = 7;
$_G['uid'] = $_G['member']['uid'] = 0;
$_G['username'] = $_G['member']['username'] = $_G['member']['password'] = '';

// 登陆
$_GET['loginsubmit']='yes';
$_GET['lssubmit']='';
$_GET['username']=$newusername;
$_GET['password']= $newpassword;
$ctl_obj = new logging_ctl();
$ctl_obj->setting = $_G['setting'];
$ctl_obj->template = 'member/login';
$ctl_obj->on_login();

//调用
$url = 'http://www.xxx.cn/addorlogin.php?';
$url.'newusername='.$username.'&newpassword='.$password.'&time='.$time.'&code='.$code;

 ?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值