針對上一節的表單添加驗證功能php
File:plugins\raiseinfo\contact\components\ContactForm.php use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Redirect; ... public function onSend() { $validator = Validator::make( [ 'name' => Input::get('name'), 'email' => Input::get('email') ], [ 'name' => 'required|min:5', 'email' => 'required|email' ] ); if($validator->fails()){ return Redirect::back()->withErrors($validator); }else{ $vars = [ 'name' => Input::get('name'), 'email' => Input::get('email'), 'content' => Input::get('content') ]; // views/mail/message/htm Mail::send('raiseinfo.contact::mail.message', $vars, function($message) { $message->to('tian5258@gmail.com', 'Admin Person'); $message->subject('從聯繫人表單提交的郵件'); }); } }
顯示錯誤信息ui
File:plugins\raiseinfo\contact\components\contactform\default.htm <form data-request="onSend"> <label>姓名:</label> <input type="text" name="name" class="form-control"> {{ errors.first('name') }} <label>郵件地址:</label> <input type="email" name="email" class="form-control"> {{ errors.first('email') }} <label>信息:</label> <textarea name="content" class="form-control"></textarea> <button type="submit" class="btn btn-success form-control">發送</button> <ul> {% for error in errors.all() %} <li>{{ error }}</li> {% endfor %} </ul> </form>