【问题标题】:How to validate auth form data in Laravel 5.3如何在 Laravel 5.3 中验证身份验证表单数据
【发布时间】:2017-03-03 12:04:40
【问题描述】:

我正在尝试在 Laravel 5.3 中构建身份验证。由于某种原因,RegisterUsers.php 文件中的注册函数没有验证我的表单数据。当我填写表格并发送时,我收到 3 个错误,告诉我 3 个字段是必需的;就像数据甚至没有被传递一样。我没有使用 php artisan make:auth 或 laravel 集体,我也许应该。有什么明显的我做错了吗?提前谢谢。

register.blade.php

@extends('main')
@section('title','Register')
@section('content')
    <form action='{{Auth::routes('auth.register')}}' method='POST'>
        {{ csrf_field() }} 
        <div class='row well'>
            <div class='col-md-6 col-md-offset-3'>
                <div class='form-group'>
                    <label for='name'>Name</label>
                    <input type='text' id='name' class='form-control'>
                </div>
                <div class='form-group'>
                    <label for='email'>Email</label>
                    <input type='text' id='email' class='form-control'>
                </div>
                <div class='form-group'>
                    <label for='password'>Password</label>
                    <input type='password' id='password' class='form-control'>
                </div>
                <div class='form-group'>
                    <label for='password'>Confirm Password</label>
                    <input type='password' id='password' class='form-control'>
                </div>
                <div class='form-group'>
                    <label for='pw-remember'>Remember Me</label>
                    <input type='checkbox' id='pw-remember' class='form-control'>
                </div>

                <input type='submit' value='Login' class='btn btn-success btn-block'>
            </div>
        </div>
    </form>
@endsection

web.php

// auth routes
Route::get('auth/login', 'Auth\LoginController@showLoginForm');
Route::post('auth/login', 'Auth\LoginController@login');
Route::post('auth/logout', 'Auth\LoginController@logout');
// Registration routes
Route::get('auth/register', 'Auth\RegisterController@showRegistrationForm');
Route::post('auth/register', 'Auth\RegisterController@register');

Route::get('blog/{slug}', ['as' => 'blog.single', 'uses' => 'BlogController@getSingle'])->where('slug', '[\w\d\-\_]+');
Route::get('blogs', 'BlogController@getIndex');
Route::get('/', 'PageController@getIndex');
Route::get('about', 'PageController@getAbout');
Route::get('contact', 'PageController@getContact');

Route::resource('posts', 'PostController');

【问题讨论】:

    标签: laravel-5 blade laravel-artisan


    【解决方案1】:

    请为&lt;input/&gt; 标签添加name 属性

    @extends('main')
    @section('title','Register')
    @section('content')
        <form action='{{Auth::routes('auth.register')}}' method='POST'>
            {{ csrf_field() }} 
            <div class='row well'>
                <div class='col-md-6 col-md-offset-3'>
                    <div class='form-group'>
                        <label for='name'>Name</label>
                        <input type='text' id='name' name='name' class='form-control'>
                    </div>
                    <div class='form-group'>
                        <label for='email'>Email</label>
                        <input type='text' name='email' id='email' class='form-control'>
                    </div>
                    <div class='form-group'>
                        <label for='password'>Password</label>
                        <input type='password' id='password' name='password' class='form-control'>
                    </div>
                    <div class='form-group'>
                        <label for='password'>Confirm Password</label>
                        <input type='password' id='password' name='confirm_password' class='form-control'>
                    </div>
                    <div class='form-group'>
                        <label for='pw-remember'>Remember Me</label>
                        <input type='checkbox' id='pw-remember' class='form-control' name='pw-remember'>
                    </div>
    
                    <input type='submit' value='Login' class='btn btn-success btn-block'>
                </div>
            </div>
        </form>
    @endsection
    

    【讨论】:

    • 我在等待答案时才意识到这一点!哇,我忘记了输入中的名称,并将 for="" 替换为 id="" 并且一切正常。感谢您的回答!
    猜你喜欢
    • 2017-05-25
    • 2017-05-13
    • 2017-06-18
    • 1970-01-01
    • 2017-01-25
    • 1970-01-01
    • 2017-01-18
    • 2013-10-30
    • 1970-01-01
    相关资源
    最近更新 更多