ホームページ バックエンド開発 PHPチュートリアル Laravel 5.2新機能シリーズ - フォーム配列入力検証機能の実装

Laravel 5.2新機能シリーズ - フォーム配列入力検証機能の実装

Jun 23, 2016 pm 01:16 PM

Laravel 5.2 では新しいフォーム配列入力検証が追加されていますが、混乱していますか?以下では、この機能を説明するために特定の例を使用します。

まず、routes.php で対応するルートを定義します:

Route::get('form','TestController@form');Route::post('form/validate','TestController@validate');
ログイン後にコピー

次に、Artisan コマンドを使用して、対応するコントローラーを作成します:

php artisan make:controller TestController
ログイン後にコピー

生成された TestController.php ファイルを次のように編集します:

<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests;use App\Http\Controllers\Controller;class TestController extends Controller{    public function form()    {        return view('test.form');    }    public function validate(Requests\FormRequest $request)    {        return 'success';    }}
ログイン後にコピー

次に、フォーム ビュー ファイル resource/を作成します。 views/test /form.blade.php、form.blade.php ファイルの内容を次のように編集します:

@extends('layouts.app')@section('content')    <div class="container">        <div class="row">            @if (count($errors) > 0)            <div class="alert alert-danger">                <ul>                    @foreach ($errors->all() as $error)                    <li>{{ $error }}</li>                    @endforeach                </ul>            </div>            @endif            <form action="{{url('form/validate')}}" method="POST">                {!! csrf_field() !!}                <label>Company Name</label>                <input type="text" name="name">                <h3>Employees</h3>                <div class="add-employee">                    <label>Employee Name</label>                    <input type="text" name="employee[1][name]">                    <label>Employee Title</label>                    <input type="text" name="employee[1][title]">                </div>                <div class="add-employee">                    <label>Employee Name</label>                    <input type="text" name="employee[2][name]">                    <label>Employee Title</label>                    <input type="text" name="employee[2][title]">                </div>                <input type="submit">            </form>        </div>    </div>@endsection
ログイン後にコピー

入力するフォームに配列入力フィールドemployee[][name]とemployee[][title]を定義しました。複数の従業員名と役職を同時に入力します。

さらに、コントローラー TestController の validate メソッドに FormRequest リクエスト クラスを挿入していることに注意してください。以下では、Artisan コマンドを使用してこのリクエスト クラスを生成します。これはアプリ内で行われます。FormRequest.php は /Http/Requests ディレクトリに生成されます。ファイルの内容を次のように編集します。

php artisan make:request FormRequest
ログイン後にコピー

この時点で、コードの作成作業が完了したので、配列入力の検証をテストしてみましょう。ブラウザで http://laravel.app/ にアクセスすると、ページは次のように表示されます:

次にフォーム データを入力します:

最後に、[送信] ボタンをクリックして検証エラー メッセージを表示します。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

11ベストPHP URLショートナースクリプト(無料およびプレミアム) 11ベストPHP URLショートナースクリプト(無料およびプレミアム) Mar 03, 2025 am 10:49 AM

11ベストPHP URLショートナースクリプト(無料およびプレミアム)

Instagram APIの紹介 Instagram APIの紹介 Mar 02, 2025 am 09:32 AM

Instagram APIの紹介

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelでフラッシュセッションデータを使用します

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

LaravelのバックエンドでReactアプリを構築する:パート2、React

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelテストでの簡略化されたHTTP応答のモッキング

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPのカール:REST APIでPHPカール拡張機能を使用する方法

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

Codecanyonで12の最高のPHPチャットスクリプト

Laravelの通知 Laravelの通知 Mar 04, 2025 am 09:22 AM

Laravelの通知

See all articles