2017-06-05 59 views
0

我使用驗證來確認註冊表單。 `$ message = array('required'=>'你不能');

$datavalidate = array(
     'phone' =>$request->input('phone') 
    ); 
    $rules = array(
     'phone' =>'required' 
    ); 

    $validator = Validator::make($datavalidate,$rules,$message); 
    if($validator->fails()) 
    { 
     return Redirect::back()->withErrors($validator); 

    } 

    $this->validate($request,[ 
     'phone' => 'required', 
     'confirmCode' => 'required' 
    ]);` 

兩種方式都無法獲得$錯誤。 我可以肯定這個驗證工作。拋出一個異常,因爲在驗證方法之後,所有代碼都不是理由。 但我可以得到$錯誤,也許直接錯誤的網址? 這是包含在註冊網頁中。 `

這個列表不能顯示任何$ error.Is有沒有直接上一個網址。 更新:這是表單。

  <form class="form-horizontal" action="{{route('confirmRegister')}}"method="post" onsubmit="return postForm()"> 

      {{csrf_field()}} 
      <div class="form-group"> 
       <label for="mobileNum" class="col-xs-3 control-label text-center">手機號</label> 
       <div class="col-xs-8"> 
        <input type="text" name="phone" class="form-control" id="mobileNum" placeholder="手機號碼"> 
       </div> 
      </div> 

      <div class="form-group"> 

       <label for="passWord" class="col-xs-3 text-center">密碼</label> 
       <div class="col-xs-8"> 
        <input type="password" class="form-control" id="passWord" placeholder="密碼"> 
        <input type="hidden" id="sendPassWord" name="passWord"> 
        <input type="hidden" id="openId" name="openId"> 
       </div> 
      </div> 

      <div class="form-group"> 

       <label for="confirmPassWord" class="col-xs-3 text-center">確認密碼</label> 
       <div class="col-xs-8"> 
        <input type="password" name="confirmPassWord" class="form-control" id="confirmPassWord" placeholder="確認密碼"> 
       </div> 
      </div> 

      <div class="form-group"> 
       <label for="confirm" class="col-xs-3 text-center">驗證碼</label> 
       <div class="col-xs-5"> 
        <input type="text" name="confirmCode" class="form-control" id="confirm" placeholder="短信驗證碼"> 
       </div> 
       <div class="col-xs-4"> 
        <button type="button" class="btn btn-info btn-block" id="getConfirm">獲取驗證碼</button> 
       </div> 
      </div> 
      <div class="alert alert-danger alert-dismissible col-xs-offset-3 col-xs-8" role="alert" style="display: none" id="codeError"> 
       <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
       <strong>錯誤!</strong> 獲取驗證碼失敗! 
      </div> 


      <div class="form-group"> 
       <div class="col-xs-offset-3 col-xs-8"> 
        <button type="submit" class="btn btn-primary btn-block" id="register">註冊</button> 
       </div> 
      </div> 





     </form> 

UPDATE:

 function postForm() { 

     var passWord = md5($('#passWord').val()); 
     $('#sendPassWord').val(passWord); 

     $('#openId').val("{{$openId}}"); 


     return true; 


    } 
+0

請分享您提交的表單的HTML。 – haakym

+0

@ haakym,請參閱更新。 –

+0

你是否使用ajax來提交表單,因爲我可以在你的表單html代碼中看到這個:'onsubmit =「return postForm()」' – haakym

回答

0
phone<input type="text" name="phone" > 
    <span class="error">{{$errors->first('phone')}}</span> 

    confirmCode<input type="text" name="confirmCode"> 
    <span class="error">{{$errors->first('confirmCode')}}</span> 

控制器代碼

 $rules = ['phone' => 'required', 
      'confirmCode' => 'required', 

     ]; 
     $message = [ 
      'phone.required' => 'enter your phone number', 
      'confirmCode.required' => 'confirm your code 

     ]; 
     $validator = validator::make($request->input(), $rules, $message); 
     if ($validator->fails()) { 
      return back() 
       ->WithErrors($validator) 
       ->WithInput(); 
}else{ write your codes here 

試試這個。以這種方式設置您的規則和消息

+0

無法獲得錯誤,但規則起作用。 –

+0

在刀片頁面中添加錯誤類別。我在答案中添加了刀片頁面。經歷它。它可能會幫助你 –