首页 > 编程 > PHP > 正文

Laravel实现用户注册和登录

2020-03-22 16:32:28
字体:
来源:转载
供稿:网友
Laravel身为最优雅的html' target='_blank'>PHP框架,很多学习PHP的小伙伴造就对Laravel垂涎欲滴。今天就来实现你的愿望,让我们一起从零开始,利用Laravel实现Web应用最常见的注册和登录功能!所有的课程源码已放在Github上:laravel-start. Race Start !首先我们来明确一下我们这个课程需要的东西:Laravel 4.2
Bootstrap 3.3
Laravel就是我们关心的核心部分,Bootstrap用来快速设置一些前端的CSSyangshi_10628_1.html' target='_blank'>CSS样式。1.安装Laravel简单说明之后我们来进入下一步,安装Laravel,在这我们是通过Composer来安装,打开命令行终端,执行:http://localhost:8000/users/register
见证奇迹吧。是不是很爽!哈哈哈。如果现在你在这个注册表单添上相应的注册信息,然后点击注册的话,你会得到一个意外的错误:NotFoundHttpException!那是因为我们还没有为注册表单写提交地址:users/create。所以我们自然要来到UsersController中,为其添上postCreate():http://localhost:8000/users/register你可以试着输入你的用户名,邮箱,密码来注册一个,当然你也可以故意输错,看看会有什么信息返回给你。enjoy!正常情况下,你注册完之后就吼跳到登录界面(已经写好了),但是我们在登录的时候也需要验证,如果你仔细看上面的login.blade.php的话,你会发现我们在这里将用户的登录表单提交地址设置为
'url'= 'users/signin',所以接下来的一步就是为UsersController补充postSignin()方法:http://www.jellybool.com" target="_blank"
img src="https://cdn14.x6kj.com/uploads/allimg/191122/102J1B36-0.png"
/a
/center
center h1 欢迎来到管理面板! /h1 /center
/div
写到这里我们还不能登录,因为在Laravel中auth过滤(filter)会默认将没登录的用户重定向到/login,但我们需要的是重定向到users/login,所以我们需要自定义我们的filter规则,打开app/filter.php,在代码的开始加上下面的代码:http://localhost:8000/users/login尝试登录一下,你会发现:Bingo!!!登录进去了!9.实现退出但是细心的你发现了没,我们还有一个需要完善的地方.....没错!就是我们的导航,我们已经登录进去了,它还是显示登录和注册,不科学啊!所以回到最初我们的main.blade.php在链接部分我们将它改为:复制代码 代码如下:
ul
@if(!Auth::check())
li {{ HTML::link('users/register', '注册') }} /li
li {{ HTML::link('users/login', '登陆') }} /li @else
li {{ HTML::link('users/logout', '退出') }} /li
@endif
/ul
没错,我们为导航这里加入了条件判断语句,如果用户没有通过Auth::check(),也就是没有登录的话,我们显示登录和注册,如果登录了就显示退出,既然有了users/logout这个链接,那么我们就会想到在UsersController写这个getLogout()方法,而且这个方法是负责清理用户的登录信息的,所以:复制代码 代码如下:
public function getLogout() {
if(Auth::check())
{
Auth::logout();
}
return Redirect::to('users/login')- with('message','你现在已经退出登录了!');
}
这里我们Auth::logout()将用户的登录信息(主要就是session信息)清除掉,然后再将用户重定向到登录界面。10.最后的最后这个小教程写到这里就基本结束了,希望各位玩的愉快。最后多说一句:编程是我们最容易学习的超能力,永远要相信自己可以改变世界!PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表