PHP简单登录类 最原始的PHP操作mysql登录代码

PHP代码:

include "../myclasses/Login.php";
$dbserv="localhost";
$dbport="3306";
$dbuser="root";
$dbpass="123456";
$dbname="test";
$login=new Login($dbserv,$dbport,$dbuser,$dbpass,$dbname);
$login->error_report=true;
$login->cookietime=3600*24*30;
if($login->isLoggedin())
{
echo $login->username." has aready logged in";
}
elseif($login->userAuth("danielking","1234"))
{
echo "login successfully";
$login->setSession();
}
echo "

...

"; /* if($login->userLogout()) echo "logged out"; else echo "logout failed"; */ ?>

类:

errReport($this->err_mysql);
			$this->err=$this->err_mysql;
		}
	}

	 //判断是否登录
	function isLoggedin() {
		//如果cookie中保存有sid
		if(isset($_COOKIE['sid'])) {
			session_id($_COOKIE['sid']);
			session_start();
			$this->username=$_SESSION['username'];
			$this->userid=$_SESSION['userid'];
			$this->userlevel=$_SESSION['userlevel'];
			return true;
		} else{
			//如果cookie中未保存sid,则直接检查session
			session_start();
			if(isset($_SESSION['username'])) return true;
		}
		return false;
	}

	 //用户认证
	function userAuth($username,$userpass) {
		$this->username=$username;
		$this->userpass=$userpass;
		$query="select * from `".$this->authtable."` where `username`='$username';";
		$result=mysql_query($query);
		if(mysql_num_rows($result)!=0) //找到此用户
		{
		$row=mysql_fetch_array($result);
		if($row['bannd']==1) //此用户被封禁
		{
		$this->errReport($this->err_user);
		$this->err=$this->err_user;
		return false;
		}
		elseif(md5($userpass)==$row['userpass']) //密码匹配
		{
		$this->userid=$row['id'];
		$this->userlevel=$row['userlevel'];
		return true;
		}
		else //密码不匹配
		{
		$this->errReport($this->err_password);
		$this->err=$this->err_password;
		return false;
		}
		}
		else //没有找到此用户
		{
		$this->errReport($this->err_username);
		$this->err=$this->err_username;
		return false;
		}
	}

	 //置session
	function setSession() {
		$sid=uniqid('sid'); //生成sid
		session_id($sid);
		session_start();
		$_SESSION['username']=$this->username; //给session变量赋值
		$_SESSION['userid']=$this->userid; //..
		$_SESSION['userlevel']=$this->userlevel; //..
		if($this->use_cookie) //如果使用cookie保存sid
		{
		if(!setcookie('sid',$sid,time()+$this->cookietime,$this->cookiepath))
		$this->errReport("set cookie failed");
		}
		else
		setcookie('sid','',time()-3600); //清除cookie中的sid
		}

		function userLogout() //用户注销
		{
		session_start();
		unset($_SESSION['username']); //清除session中的username
		if(setcookie('sid','',time()-3600))
		//清除cookie中的sid
		return true;
		else
		return false;
	}

	 //报错
	function errReport($str) {
		if($this->error_report) echo "ERROR: $str";
	}
}
?>

温馨提示: 本文最后更新于2024-12-31 21:02:39,某些文章具有时效性,若有错误或已失效,请在下方 留言或联系 蚂蚁官方
© 版权声明
THE END
喜欢就支持一下吧
点赞14赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容