簡體   English   中英

Laravel 5中請求驗證失敗后,如何自定義重定向URL?

[英]How to customize redirect url after request validation fails in laravel 5?

我正在use Illuminate\\Http\\Request訪問表單請求。 例如,如果我的表單請求在驗證后來自http://localhost:8012/test_project/public ,它會自動重定向到帶有錯誤消息的http://localhost:8012/test_project/public ,但我希望它重定向到http://localhost:8012/test_project/public#myform因為我的表單在#myform部分中可見。 那么我們該怎么做。 我正在使用Laravel 5.0
以下是控制器中處理我的請求的方法代碼

public function add_user(Request $request){
        $this->validate($request, [
            'name' => 'required|min:3',
            'email' => 'required|email|unique:users,email',
            'mobile' => 'required|regex:/^[789]\d{9}+$/|unique:users,mobile',
            'pass' => 'required|min:6',
            'cpass' => 'required|same:pass'

         ]);

        $user = new Myuser;

        $user->name = $request->input('name');
        $user->email = $request->input('email');
        $user->mobile = $request->input('mobile');
        $user->pass = md5("EEE".$request->input('pass'));
        $user->register_on = date('Y-m-d');
        $user->user_type = 'Free';
        $user->last_login = date('Y-m-d H:i:s');
        $user->status = 'Active';

        $user->save();
        $insertedId = $user->sno;

        $uid = "UID".$insertedId;

        Myuser::where('sno', $insertedId)
          ->update(['uid' => $uid]);

        //echo $insertedId;
        return redirect('')->with('message', 'Registered Successfully');
    }

如果您使用自己的Validator而不是使用$this->validate() ,則可以更好地控制驗證失敗后的情況。 這是laravel文檔中的示例。 確保添加use Validator; 到您的php文件的頂部。 https://laravel.com/docs/5.3/validation

public function store(Request $request)
    {
        $validator = Validator::make($request->all(), [
            'title' => 'required|unique:posts|max:255',
            'body' => 'required',
        ]);

        if ($validator->fails()) {
            return redirect('post/create')
                        ->withErrors($validator)
                        ->withInput();
        }

        // Store the blog post...
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM