在使用laravel提交表单进行处理时,compiled.php中的tokenmismatchexception?

时间:2016-11-15 09:26:28

标签: php forms laravel

如果已经被问到,请提前抱歉。但无论我怎么做都无法发挥作用。

我创建了一个将表单数据存储到数据库中的表单,以下是我创建的表单,它在compiled.php中给出了tokenmismatchexception,我尝试解决错误。

@extends('main')
@section('title','| Create Post')
@endsection
@section('stylesheet')
<link href="../css/parsley.css" rel="stylesheet" type="text/css">
@endsection
@section('content')
<div class="row">
    <div class="col-md-8 col-md-offset-2">
        <h1>Create New Post</h1>
        <hr/>
        <form action="{{ route('posts.store') }}" method="POST" data-parsley-validate>
            <div class="form-group">
                <div class="form-group">
                    <label name="title">Title:</label>
                    <input id="title" name="title" class="form-control" data-parsley-required="true" data-parsley-maxlength="255">
                </div>
                <div class="form-group">
                    <label name="body">Post Body:</label>
                    <textarea id="body" name="body" class="form-control" data-parsley-required="true"></textarea>
                </div>
                <input type="hidden" name="_token" value="{{ csrf_token() }}">
                <input type="submit" class="btn btn-success btn-lg btn-block" value="Save Post">
            </div>
        </form>
    </div>
</div>
 @endsection

 @section('scripts')
  <script src="../js/parsley.min.js" type="text/javascript"></script>
 @endsection

我的尝试:

1)尝试添加值为csrf_token

的隐藏字段
<input type="hidden" name="_token" value="{{ csrf_token() }}">

2 个答案:

答案 0 :(得分:0)

就像你使用Ajax提交表单一样,所以你必须这样做

添加元标记:

<meta name="csrf-token" content="{{ csrf_token() }}">

为您的ajax设置添加标题:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

答案 1 :(得分:0)

只是使用 <input type="hidden" name="_token" value="{{ csrf_token() }}"> <form>仅在@section('content') <div class="row"> <div class="col-md-8 col-md-offset-2"> <h1>Create New Post</h1> <hr/> <form action="{{ route('posts.store') }}" method="POST" data-parsley-validate> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <div class="form-group"> <div class="form-group"> <label name="title">Title:</label> <input id="title" name="title" class="form-control" data-parsley-required="true" data-parsley-maxlength="255"> </div> <div class="form-group"> <label name="body">Post Body:</label> <textarea id="body" name="body" class="form-control" data-parsley-required="true"></textarea> </div> <input type="submit" class="btn btn-success btn-lg btn-block" value="Save Post"> </div> </form> </div> </div> @endsection 开始标记后表示

<html>
     <head>
      <meta name="_token" content="{{ csrf_token() }}"/>
     </head>

     <body>
     </body>

    </html>

添加html头部

CKEditor_30