2016-09-15 4 views
0

Ich erstelle einfache Form, dann habe ich einen Fehler.
routes.phpFehler TokenMismatchException in VerifyCsrfToken.php

Route::resource('/posts','PostsController'); 

Posts

public function create() 
{ 
    return view('posts.create'); 
} 
public function store(Request $request) 
{ 
    return $request->all(); 
} 

create.blade.php

@extends('layouts/aap') 

@section('content') 
    <form method="post" action="/posts"> 
     <input type="text" name="title" placeholder="Enter Title"> 

     <input type="submit" name="submit"> 
    </form> 


@yield('footer') 

** Ich möchte Titeldaten erhalten, eingereicht ** wenn Ich drücke Submit-Button Ich habe dies Fehler enter image description here

iam Anfänger kann mir helfen!

Antwort

0

Wenn Sie nicht csrf benötigen verifcation Sie entfernen können:

Illuminate\Foundation\Http\Middleware\VerifyCsrfToken 

von /app/Http/Resquests/Kernel.php

Wenn Sie csrf verifcation Sie verstecktes Feld zu Ihrem Formular hinzufügen:

<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>" /> 

Oder Sie können Ihrem Hauptlayout für jedes Projekt einen Meta-Tag hinzufügen:

<meta name="csrf-token" content="<?php echo csrf_token(); ?>" /> 
+0

können Sie erklären, über csrf Verifikation, weil Iam nach einem Tutorial, es keine versteckten Feld eingeben, aber sein Code funktioniert **, WARUM? ** –

+0

Wenn ich versteckte Feld eingeben, zeigt es seine Werte auf der Quelle Code, dann irgendwelche Sicherheitsprobleme? –

+0

Ich denke, dass sein Code funktioniert, weil er csrf Verifkation deaktiviert hat. Sie können hier mehr https://laravel.com/docs/5.3/csrf lesen. Wenn Sie ein verstecktes Feld hinzufügen, haben Sie keine Sicherheitsprobleme, da Laravel für jede aktive Benutzersitzung ein csrf-Token generiert. –

Verwandte Themen