php是先登录注册按钮,PHP(Laravel)用户注册、登录和退出

php是先登录注册按钮,PHP(Laravel)用户注册、登录和退出_第1张图片

实现用户登陆注册

在其他的 PHP 框架中,如果要实现登陆注册、表单验证、记住密码、多次登陆锁定账户、发邮件重置密码这一系列功能,这是一个非常繁琐的事情,就算是非常有经验的老手,实现起来也需要花费不少功夫,想想都很头疼。

那么这些功能,在 laravel 中实现,需要多久呢?是一星期、一天、还是一小时呢?正确的答案是1秒钟。

打开命令行,输入php artisan make:auth

出现有一个提示,说我们布局模板已经有了,是否还要重新创建一个?默认是no,那么我们直接按回车就好了,不然就会把我们自己做的布局覆盖掉了。

The [layouts/app.blade.php] view already exists. Do you want to replace it? (yes/no) [no]:

好了,恭喜你,登录注册所有的一切功能你已经做完了。好,我们这一集就到这里。O(∩_∩) O 哈哈~

等等。。。这真的就做完了吗?这是绝对是真的。猜到你还是一脸懵逼的样子,就这么结束了,我实在于心不忍啊,那我还是来说一下刚才到底实现了什么吧。

路由

先来php artisan route:list看一下路由,咦,居然自己多出来一堆跟登录注册相关的路由。再到 routes/web.php中看一下,自动被添加上了Auth::routes()这么一条路由。可想而知,这一条路由的作用就是为了生成登录注册相关的一系列路由。

登录

那么我们先来访问一下/login,看看这个登录是怎么回事。浏览器中出现一个表单,看来这就是登录的地方了。但是我们现在数据库中还没有用户,所以接着去访问一下/register。

注册

出来一个注册用户的表单,好,我们来填写一下看看。这里的邮件地址一定要填写一个真实可用的邮件地址,不然后面做到找回密码功能就不好处理了。

You are logged in!

提示,你已经登录了。这是不是说明,刚才我们填写的信息已经存入数据库,并自动实现了登录呢?打开数据库的users表,发现我们刚才填写的数据,确实已经注册进去了,而且密码也自动做了加密。这时候,我们再重新访问/register或者/login,发现都自动跳转到了/home。这是因为当前用户已经登录, 所以不能再重复的登录注册了。看来确实是这么回事啊,这就说明 laravel 的登录注册功能,确确实实已经可以用了啊。

显示用户信息和退出

来实现一点小功能,用户登录后,右上角的登录注册按钮,应该显示成当前登录用户的信息,并且添加退出功能。在app.blade.php布局模板中,将整块登录注册按钮部分的代码,替换成

@if (Auth::guest())

Login

你可能感兴趣的:(php是先登录注册按钮)