emlog用户注册的简单实现
[ 2015/01/03, Emlog , 4290阅, 0评 ]

先在模板中建立一个文件(ps:最好是先复制原模板中的pege.php文件,更改一下文件名就可以了,此处以page_reg.php为例)

1.在新建的page_reg.php中找到<?php echo $log_content; ?>,直接把它替换成如下代码:

<?php echo $log_content; ?>
<table align="center">
  <form action="" method="post" name="reg" id="reg" onsubmit="return checkReg();">
    <tr>
      <td align="right">用户名:</td>
      <td><input name="username" class="usr" > * 必填,大于等于5位</td>
    </tr>
    <tr>
      <td align="right">密码:</td>
      <td><input name="password" type="password"> * 必填,大于等于5位</td>
    </tr>
    <tr>
      <td align="right">重复密码:</td>
      <td><input name="password2" type="password"></td>
    </tr>
    <tr>
      <td align="right">验证码:</td>
      <td><input name="imgcode" type="text" class="imgcode">
        <img src="<?php echo BLOG_URL; ?>include/lib/checkcode.php" width="80" id="yzcode" /></td>
    </tr>
    <tr>
      <td align="right"></td>
      <td><input type="submit" value="确认注册" class="rbtn"><input type="reset" value="重置" class="rbtn"></td>
    </tr>
    <tr>
      <td></td>
      <td><a href="admin/" title="前往登录">已有账号,前往登陆?</a></td>
    </tr>
  </form>
</table>
<?php
session_start();
!defined('EMLOG_ROOT') && exit('access deined!');
if(ROLE == 'admin' || ROLE == 'writer'){
	header('Location:'.BLOG_URL.'admin/');
}
global $CACHE;
$options_cache = $CACHE->readCache('options');
$DB = MySql::getInstance();
$username = isset($_POST['username']) ? addslashes(trim($_POST['username'])) : '';
$password = isset($_POST['password']) ? addslashes(trim($_POST['password'])) : '';
$password2 = isset($_POST['password2']) ? addslashes(trim($_POST['password2'])) : '';
$imgcode = isset($_POST['imgcode']) ? strtoupper(addslashes(trim($_POST['imgcode']))): '';
if($username && $password && $password2 && $imgcode ){
	$sessionCode = isset($_SESSION['code']) ? $_SESSION['code'] : '';
	//echo $sessionCode;
	if($imgcode == $sessionCode){
		$User_Model = new User_Model();
		if(!$User_Model -> isUserExist($username)){
			$hsPWD = new PasswordHash(8, true);
			$password = $hsPWD->HashPassword($password);
			$User_Model->addUser($username, $password, 'writer', 'y');
			$CACHE->updateCache();
			echo'<script>alert("注册成功!"); window.location.href="'.BLOG_URL.'admin/"</script>';
		}else{
			echo'<script>alert("用户名已存在!");</script>';
		}
	}else{
		echo'<script>alert("验证码错误!");</script>';
	}
}?>
<script src="<?php echo TEMPLATE_URL; ?>js/jquery-1.11.1.min.js" type="text/javascript"></script>
<script>
function checkReg(){
	var usrName = $("input[name=username]").val().replace(/(^\s*)|(\s*$)/g, "");
	var pwd = $("input[name=password]").val().replace(/(^\s*)|(\s*$)/g, "");
	var pwd2 = $("input[name=password2]").val().replace(/(^\s*)|(\s*$)/g, "");
	var yzm = $("input[name=imgcode]").val().replace(/(^\s*)|(\s*$)/g, "");
	if(usrName.match(/\s/) || pwd.match(/\s/)){
		alert("用户名和密码中不能有空格");
		return false;
	}
	if(usrName == '' || pwd == '' || yzm == ''){
		alert("用户名、密码、验证码都不能为空!");
		return false;
	}
	if(usrName.length < 5 || pwd.length < 5){
		alert("用户名和密码都不能小于5位!");
		return false;
	}
	else if(pwd != pwd2){
		alert("两次输入密码不相等!");
		return false;
	}
}
$(function(){
	$("#yzcode").click(function(){
		$(this).attr("src", "<?php echo BLOG_URL;?>include/lib/checkcode.php?"+Math.random());
	});
})
</script>

2.新建一个页面

后台-->>页面-->>新建页面-->>填写页面名称(如:用户注册)-->> 修改页面模板为page_reg-->>发布-->>完成。

原文(http://www.shuyong.net/465.html)

有朋自远方来...评论一下呗O(∩_∩)O