我写的LifeType登陆整合函数
项目中用到的,我费了好大劲才搞出来……..
在增个完全整合上还是有一些问题,例如:
按照它本身的程序,可以这样得到用户信息,然后可以判断用户是否已经登陆了:
PHP代码
- $userInfo = $_SESSION["SessionInfo"]->getValue("userInfo");
- $id = $userInfo->getId(); // Get User Id
- $name = $userInfo->getUsername(); // Get User Name
- $passwd = $userInfo->getPassword(); // Get USer Password
- $mail = $userInfo->getEmail(); // Get User Email
但是实际上我在用的时候老是说从session获取sessionInfo对象的时候发现sessionInfo这个类没有载入,实际上我是加载进来了的,正在研究……
PHP代码
- //导入需要的文件
- include_once( PLOG_CLASS_PATH."class/bootstrap.php" );
- lt_include( PLOG_CLASS_PATH."class/net/http/httpvars.class.php" );
- lt_include( PLOG_CLASS_PATH."class/dao/users.class.php" );
- lt_include( PLOG_CLASS_PATH."class/dao/blogs.class.php" );
- lt_include( PLOG_CLASS_PATH."class/net/http/session/sessioninfo.class.php" );
- lt_include( PLOG_CLASS_PATH."class/config/config.class.php" );
- lt_include( PLOG_CLASS_PATH."class/controller/admincontroller.class.php" );
- lt_include( PLOG_CLASS_PATH."class/net/http/session/sessionmanager.class.php" );
- lt_include( PLOG_CLASS_PATH."class/dao/userinfo.class.php" );
- lt_include( PLOG_CLASS_PATH."class/dao/bloginfo.class.php" );
- function login($username, $password){
- //初始化session
- SessionManager::init();
- //生成一个新的user对象
- $users = new Users();
- //验证用户名和密码
- if( $users->authenticateUser( $username, $password )) {
- $userInfo = $users->getUserInfo( $username, $password );
- $userBlogs = $users->getUsersBlogs( $userInfo->getId(), BLOG_STATUS_ACTIVE );
- $blogInfo = end( $userBlogs );
- //获取session对象
- $session = HttpVars::getSession();
- $sessionInfo = $session["SessionInfo"];
- //设置session对象的值
- $sessionInfo->setValue( "userInfo", $userInfo );
- $sessionInfo->setValue( "blogInfo", $blogInfo );
- $session["SessionInfo"] = $sessionInfo;
- //写入session
- HttpVars::setSession( $session );
- return true;
- }else{
- return false;
- }
- }
发表评论
| Trackback
