Home >Backend Development >PHP Tutorial >PHP automatic registration login verification mechanism implementation code_PHP tutorial

PHP automatic registration login verification mechanism implementation code_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:22:471131browse

Background:

Add an application called "Advertising Manager" (Advertising Manager is an advertising application of CNZZ) in the background of the phpwind site. The entire "Advertising Manager" application is loaded through an iframe. The specific content entered will display the specific content for the site according to different sites. In order to improve ease of use, there are two requirements:
1. Automatically register a CNZZ account when entering the "Advertising Manager" page for the first time
2. From now on Every time you enter the "Ad Manager" page, it defaults to the CNZZ account registered for the first time


design:


1. Try to load the user account and password information. This information is stored in the database or text cache
2. When the user name and password exist, send a request to cnzz to Obtain the Token and add this Token value to the address of the iframe, so that the page for the user can be loaded
3. When the user name and password do not exist, use the cnzz registration interface and return after successful registration. token, this Token is also used as part of the iframe address to load the page
4. The Token value is only valid once, and security is guaranteed even if it is intercepted
Code:

Copy code The code is as follows:

$urls = parse_url($db_bbsurl);
$domain = $urls['host'];
include_once (R_P .'require/admvclient.php');
$adm_oem= new Cnzz_Adm_Oem();
//Determine whether the user password exists in the config file
pwCache::getData(D_P . "data/bbscache /adm_config.php");//Username and password configuration file
if (isset($adm_user) && isset($adm_pwd)) {
$request = array("adm_user"=>$adm_user," adm_pwd"=>$adm_pwd,'cms'=>'pw');
$token = $adm_oem->get_appkey_once($request);
if ($token<0){
if($token==-1){
adminmsg('The passed parameter is empty or the passed parameter is not a number');
}else if($token==-2){
adminmsg('Passed Parameter password is wrong');
}
}else{
$apikey = $token['adm_key'];
}
}else{
$Key = md5($domain .'KclGiq7H');
$request = array('cms'=>'pw','domain'=>$domain,'key'=>$Key);
$token = $ adm_oem->reg_user_once($request);
if ($token<0){//Exception
if($token==-1){
adminmsg('key is wrong');
} else if($token==-2){
adminmsg('The domain name length is wrong (1~64)');
} elseif($token==-3){
adminmsg ('The domain name is incorrectly entered (such as entering Chinese characters)');
} elseif($token==-4){
adminmsg('The domain name is incorrectly inserted into the database');
} elseif($token ==-5){
adminmsg('IP user call page exceeds the threshold, the threshold is tentatively set at 10');
}
} elseif (is_array($token) && isset($token) ){
$adm_user = $token['adm_user'];
$adm_pwd = $token['adm_pwd'];
$apikey = $token['adm_key'];
pwCache:: setData(D_P.'data/bbscache/adm_config.php',"");
}
}

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/324633.htmlTechArticleBackground: Add an "Advertising Manager" called "Advertising Manager" in the background of the phpwind site (Advertising Manager is an advertising placement of CNZZ application), the entire "Advertising Manager" application is through ifra...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn