2016-05-10 2 views
0

routes.phpMethodNotAllowed Ausnahme auf Formular

use App\Http\Controllers\Task; 
use Illuminate\Http\Request; 
Route::get('/', function() { 
    $tasks = Task::orderBy('created_at', 'asc')->get(); 

    return view('tasks', [ 
    'tasks' => $tasks 
    ]); 
}); 


Route::get('Login', '[email protected]'); 

Ausblick: loginform.blade.php

<form method="post" action="http://localhost/blog/public/Login"> 

     <!-- Task Name --> 
     <div class="form-group"> 
      <div class="col-sm-6"> 
      <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>"> 
      {!! Form::label('usernamelabel','Username', ['class'=>'col-sm-3 control-label']) !!} 
      {!! Form::text('username', '', ['class'=>'form-control','id'=>'username']) !!} 
      </div> 
      <div class="col-sm-6"> 
      {!! Form::label('passwordlabel', 'Password', ['class'=>'form-control control-label']) !!} 
      {!! Form::text('password', '', ['class'=>'form-control','id'=>'password']) !!} 
      </div> 
     </div> 

     <!-- Add Task Button --> 
     <div class="form-group"> 
      <div class="col-sm-offset-3 col-sm-6"> 
       <button type="submit" class="btn btn-default"> 

        <i class="fa fa-plus"></i> Login 
       </button> 
      </div> 
     </div> 
    {!! Form::close() !!} 

Controller: login.php

<?php 

namespace App\Http\Controllers; 

use App\Http\Controllers\Controller; 

use App\Http\Models\userloginModel; 
use Illuminate\Http\Request; 

class Login extends Controller{ 

protected $request; 


public function index(Request $request) 
{ 
    echo view('login.loginform'); 

     $foo = new userloginModel(); 
     echo $foo->username = $request->username; 
     echo $foo->password = $request->password; 


} 


} 

Ich versuche haben alle Lösungen von Stackoverflow und laracast, aber ich konnte nicht das jemand aus dieser i mit Laravel bin hier helfen Sie mir bitte antworten ..

+0

benötigen einige Dinge zu beheben verwenden 'url ('login');' in Form 'action' statt' http: // localhost/Blog/public/Login' Zweitens versuchen Sie Ihre Route zu ändern 'Route :: get ('Login', 'LoginController @ index');' dann müssen Sie Ihre Ansicht in der Indexfunktion zurückgeben, statt die Ansicht zu spiegeln. – Abbasi

+0

Danke für die Antwort Aber ich habe diese zwei Dinge geändert action = "{{url ('Login')}} "und ändere Route :: get ('Login', 'LoginController @ index'); aber immer noch gleichen Fehler gegenüber – khushi

Antwort

1

Ihr Fehler ist in der Methode, u versuchen, eine machen Post-Anforderung und Ihre Route eine GET-Anfrage erhalten, versuchen Sie dies:

Strecke

<?php 
//... 
    Route::get('Login', '[email protected]'); 
    Route::post('Login', '[email protected]'); 
?> 

-Controller

<?php 
//... 
    public function index() 
    { 
     return view('login.loginform'); 
    } 
    public function login(Request $request) 
    { 
     $foo = new userloginModel(); 
     echo $foo->username = $request->username; 
     echo $foo->password = $request->password; 
    } 
?>