thinkphp の登録
1. HTML コード
<フォームアクション="__URL__/reglog" メソッド="投稿">
<表>
関数 ref(){
document.getElementById('reg').src="__URL__/regh/random/"+Math.random();
}
2、後台代码
//取引内容を受け取ります
関数 reglog(){
// 页面乱数を防止
header('Content-type:text/html;charset=utf-8');
//$this->uadd('ユーザー');
//エコー $_POST['regx'];
if (md5($_POST['regx']) != $_SESSION['verify']) {
echo '<script>alert("验证码错误");window.location.href="'.__URL__.'/userReg"</script>';
}
他 {
$this->uadd('ユーザー');
echo '<script>alert("注册成功");window.location.href="'.__URL__.'/userReg"</script>';
}
}
//自己包装に適した内部認証コードを導入する
関数 regh(){
//自己封入に適した内部認証メソッド
$this->proving();
}
3、取引の表中の内容が要求に適合するかどうかを判断します
クラス UsersModel は Model を拡張します{
protected $_validate = array(
array('users_name','require','Name not be empty'), //デフォルトでは、検証に通常のルールが使用されます
array('users_name','','アカウント名はすでに存在します!',0,'unique',1), // 追加時に名前フィールドが一意であるかどうかを確認します
array('users_name','checklen','ユーザー名の長さは 6 ~ 15 文字である必要があります',0,'callback'),
array('users_pass','require','Password not be empty'), //デフォルトでは、検証に正規表現が使用されます
array('users_pass','checklen','パスワードの長さは 6 ~ 15 文字である必要があります',0,'callback'),
array('users_repass','users_pass','確認パスワードが間違っています',0,'確認'), // 確認パスワードがパスワードと一致するかどうかを確認します
array('users_email','RegMail','メールの形式が正しくありません',0,'callback'),
array('regx','require','確認コードを入力してください'), //デフォルトでは、正規表現が検証に使用されます
);
protected $_auto=array(
array('users_pass','md5',3,'function'),
);
関数 checklen($data){
if(strlen($data)>15||strlen($data)
false を返します;
}その他{
true を返します;
}
}
関数 RegMail($data){
If($data==""){
true を返します;
}
else{
if(preg_match("/^[0-9a-zA-Z]+(?:[_-][a-z0-9-]+)*@[a-zA-Z0-9]+(?:[ -.][a-zA-Z0-9]+)*.[a-zA-Z]+$/i", $data)){
return true;
}else{
return false;
}
}
}
}
?>