3.3. 手机注册验证码

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

1. 修改数据结构

接下来我们要准备开始手机注册功能的开发,开始之前我们需要对 LaraBBS 做一些修改。

现在的 Larabbs 是通过邮箱注册的,用户表中还没有手机字段,所以我们首先需要在 users 表中增加 phone 字段。因为是手机注册,还需要修改 email 字段为nullable

$ php artisan make:migration add_phone_to_users_table --table=users

修改文件如以下,注意文件名中的变量:

database/migrations/{your_date}_add_phone_to_users_table.php

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class AddPhoneToUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->string('phone')->nullabl...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 89

北北
请问这样做是不是有被刷短信接口的风险,应该如何预防?
4 个点赞 | 9 个回复 | 问答 | 课程版本 5.5
MrRinG
The version given was unknown or has no registered routes?
4 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
oOops
Migration error : PDOMySql\Driver not found的解决办法
4 个点赞 | 1 个回复 | 分享 | 课程版本 7.x
遗忘的时光
PHP7.0 以上??语法糖
4 个点赞 | 0 个回复 | 分享 | 课程版本 5.5
lettrue
手机号的正则匹配规则不是最新的?
3 个点赞 | 11 个回复 | 问答 | 课程版本 5.5
lianglunzhong
$this->response 和 $this->response () 的区别?
3 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
zhaiduting
手机号的验证规则,简化版
3 个点赞 | 1 个回复 | 分享 | 课程版本 6.x
北极冰
使用 easysms 发送短信,提示 All the gateways have failed?
2 个点赞 | 11 个回复 | 问答 | 课程版本 5.5
Some_power
关于出现 ‘签名不匹配’ 错误
2 个点赞 | 2 个回复 | 分享 | 课程版本 5.5
uptutu
422 Unprocessable Entity ?
1 个点赞 | 16 个回复 | 问答 | 课程版本 5.5
Kaven
为什么我在实际应用中会 500 错误?
1 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
QYlaravel
已注册手机号 没有提示?
1 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
huxxhua
使用 postman 请求路由提示 404?
1 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
huxxhua
使用 postman 请求提示 403 Forbidden?
1 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
Jeepin
为什么要这样使用路由?
1 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
Linz
提交备注的疑问?
1 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
beatles
phpstorm 不提示 $this->response->array () 中的 array () 方法
1 个点赞 | 0 个回复 | 分享 | 课程版本 5.7
Cwift
云片网关 All the gateways have failed?
0 个点赞 | 19 个回复 | 问答 | 课程版本 5.5
EDISONYANG
The version given was unknown or has no registered routes.400?
0 个点赞 | 11 个回复 | 问答 | 课程版本 5.5
xin6841414
Windows 主机执行 PHP artisan make:controller 命令 报错?
0 个点赞 | 8 个回复 | 问答 | 课程版本 5.5
williamQian
postman 返回 405 Method Not Allowed?
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
rdeos
使用 postman 请求路由提示 405 问题?
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
272361997
发送短信 Postman 手机格式正常验证,发送短信不行!
0 个点赞 | 5 个回复 | 分享 | 课程版本 6.x
jackzheng9969
请问添加 phone 字段报错是什么原因
0 个点赞 | 5 个回复 | 分享 | 课程版本 5.8
Athos
Composer require doctrine/dbal 报错
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
purson
Composer require doctrine/dbal 报错?
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
bing_
PostMan 测试短信发送验证码失败
0 个点赞 | 4 个回复 | 分享 | 课程版本 5.8
wongvio
routes/api.php 还是 routes/web.php 是个问题
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.8
小花儿
短信接口调试失败 Could not get any response
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
MIYA28118
如果是需要做多个版本的 API 的话是怎样操作呢?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
HugBoomsj
短信模版较多的情况下,怎么样方便管理?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
断桥红颜V
安装 doctrine/dbal 组件报错?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
东商通
Unresolvable dependency resolving?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
xingxiaoli
手机号正则问题
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.7
TigerLin
接口测试报错
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.7
Rick946
请问 name 方法的作用?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.7
Aben
bear_cc
第五步中,如果数据库设计的电话参数不是 phone?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.7
sde_wang
Laravel5.7 使用 dingo2.0 通过 postman 请求时会出现 405 错误
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.7
jackbot
/Cache::put (); 存储不了值?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
um-summer
验证手机号失败之后,直接跳转到首页了,不太理解
0 个点赞 | 2 个回复 | 问答 | 课程版本 6.x
yszej
关于 postman 请求时出现 CSRF TOKEN mismatch 的问题
0 个点赞 | 2 个回复 | 分享 | 课程版本 6.x
lynzhen
接口怎么返回首页内容
0 个点赞 | 2 个回复 | 分享 | 课程版本 6.x
sufan
求助!我改为使用阿里云的短信接口,报 Invalid signaure?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.8
Leo_Phoenix
如何用 navicate 连接 Homestead 的数据库
0 个点赞 | 2 个回复 | 教程 | 课程版本 5.7
TigerLin
教程 2 的项目 PHP artisan migrate 如何避免报错
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.7
王鲸弋
提示:请求参数格式错误
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
咕咕噜
这句话是什么意思呢?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
Flourishing
老师,这句话什么含义啊,没明白,求解释!
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
shadow123
关于时间的一个问题???
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
luojigongren
关于发送成功后返回的随机 key 这里有几种思路
0 个点赞 | 1 个回复 | 问答 | 课程版本 9.x
wh128
L03希望官方可以出个逻辑分层的源码供参考
0 个点赞 | 1 个回复 | 问答 | 课程版本 8.x
hhhzzz
d1270469522
7.x 版本:更改字段失败 (doctrine/dbal)
0 个点赞 | 1 个回复 | 问答 | 课程版本 7.x
MArtian
请问什么不能自动访问Controllers/Api文件夹下的控制器?
0 个点赞 | 1 个回复 | 问答 | 课程版本 7.x
Losunlee
获取不到 env 里面的值
0 个点赞 | 1 个回复 | 问答 | 课程版本 6.x
Gu0Yu
easysms 怎么设置代理呀?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.8
Javy_coder
\Cache::put 是调用哪个类的 put?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.8
xingxiaoli
验证条件 unique:users 是什么意思呢?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.7
amberleaf
404 问题
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
qinplain
Laravel API 教程 手机短信验证
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
王鲸弋
http://{{host}}/API/v1/verificationCodes 这种形式的路由怎么改
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
sunniness
'verificationCode_'.str_random (15);
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
haha
不能新建基类?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
xuecong
发送短信放进队列发送会不会更好,有没有这个必要?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
hanghang
dingo 的 request 报错,如何按照自己的格式报错呢?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
hallo_monde
App ()->environment ('production') 这里 production 是在哪里设置的?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
Linz
是否可以使用 phone 作为缓存的键?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
Moonshadow2333
《L03》——记录一次因缓存造成的坑
0 个点赞 | 0 个回复 | 分享 | 课程版本 8.x
danguilangzi
验证器权限
0 个点赞 | 0 个回复 | 分享 | 课程版本 8.x
lafans
请求接口时候给返回的message没有被本地化
0 个点赞 | 0 个回复 | 问答 | 课程版本 8.x
tomcath
Composer require doctrine/dbal 报错及解决方案
0 个点赞 | 0 个回复 | 问答 | 课程版本 7.x
333_SSS
安装doctrine/dbal 组件之后执行migrate后报错
0 个点赞 | 0 个回复 | 问答 | 课程版本 7.x
AllenChen7
laravel7 doctrine/dbal 后执行 php artisan migrate 依然保错
0 个点赞 | 0 个回复 | 分享 | 课程版本 7.x
phpervip
返回的时间格式与教程不一样(已解决)
0 个点赞 | 0 个回复 | 分享 | 课程版本 6.x
小彭友
本地环境使用了 PHP artisan API:cache 怎么办?
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.5