質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

パスワード

パスワードは主に情報にアクセスする際に扱われます。主に、アクセス可能なユーザーを限定する手段として使われます。

CSRF

クロスサイトリクエストフォージェリ (Cross site request forgeries、CSRF)は、 外部Webページから、HTTPリクエストによって、 Webサイトの機能の一部が実行されてしまうWWWにおける攻撃手法です。

解決済

POST指定をしているがPOSTで送信されない(パスワードリセット)

kuwabaraakinori
kuwabaraakinori

総合スコア0

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

パスワード

パスワードは主に情報にアクセスする際に扱われます。主に、アクセス可能なユーザーを限定する手段として使われます。

CSRF

クロスサイトリクエストフォージェリ (Cross site request forgeries、CSRF)は、 外部Webページから、HTTPリクエストによって、 Webサイトの機能の一部が実行されてしまうWWWにおける攻撃手法です。

2回答

0評価

1クリップ

8閲覧

投稿2020/07/29 12:54

編集2022/01/12 10:58

前提・実現したいこと

Laravel6.0で旅行投稿サイトを制作しています。
今発生している問題は、login.blade.phpでパスワードリセットのためのemail.blade.phpに飛ばそうとしていますが、下記のエラーが発生しています。

ご教授いただけますと幸いです。

発生している問題・エラーメッセージ

The GET method is not supported for this route. Supported methods: POST

該当のソースコード

login.blade.php @extends('layouts.app') @section('content') <div class="text-center"> <h1 style="font-family:serif; text-align:center; margin-top:20px;">ログイン</h1> </div> <div class="row"> <div class="col-sm-6 offset-sm-3"> {!! Form::open(['route' => 'login.post']) !!} <div class="form-group"> {!! Form::label('email', 'Email') !!} {!! Form::email('email', old('email'), ['class' => 'form-control']) !!} </div> <div class="form-group"> {!! Form::label('password', 'Password') !!} {!! Form::password('password', ['class' => 'form-control']) !!} </div> {!! Form::submit('ログイン', ['class' => 'btn btn-primary btn-block']) !!} <div class="text"> <h6 style="font-family:serif; text-align:center; margin-top:20px;"><a href="/signup" class="btn btn-link">ユーザー登録がまだの方</a></h6> </div> <div class="text"> <h6 style="font-family:serif; text-align:center; margin-top:20px;"><a href="{{ route('password.email') }}" class="btn btn-link" >パスワードをお忘れの方</a></h6> </div> {!! Form::close() !!} </div> </div> @endsection
<?php /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('/' , 'ContentController@index')->name('index'); Auth::routes(['verify' => true]); Route::get('signup', 'Auth\RegisterController@showRegistrationForm')->name('signup.get'); Route::post('signup', 'Auth\RegisterController@register')->name('signup.post'); Route::get('login' , 'Auth\LoginController@showLoginForm')->name('login'); Route::post('login' , 'Auth\LoginController@login')->name('login.post'); Route::get('logout' , 'Auth\LoginController@logout')->name('logout.get'); Route::get('search' , 'SearchController@index')->name('search'); Route::get('/contact' , 'ContactController@index')->name('contact.index'); Route::post('/contact/confirm' , 'ContactController@confirm')->name('contact.confirm'); Route::match(['get', 'post'], '/contact/send' ,'ContactController@send')->name('contact.send'); Route::post('password/email' , 'Auth\ForgotPasswordController@sendResetLinkEmail')->name('password.email'); Route::post('password/confirm' , 'Auth\ConfirmPasswordController@showConfirmForm')->name('password.confirm'); Route::get('password/reset/{token}' , 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.update'); Route::post('password/reset', 'Auth\ResetPasswordController@reset'); Route::group(['middleware' => ['auth']], function(){ Route::resource('/content' , 'ContentController' , ['except'=>['index']]); Route::resource('users', 'UsersController', ['only' => ['index' , 'show' ]]); });
email.blade.php @extends('layouts.app') @section('content') <div class="container"> <div class="row justify-content-center"> <div class="col-md-8"> <div class="card"> <div class="card-header">{{ __('Reset Password') }}</div> <div class="card-body"> @if (session('status')) <div class="alert alert-success" role="alert"> {{ session('status') }} </div> @endif <form method="POST" action="{{ route('password.email') }}"> @csrf <div class="form-group row"> <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label> <div class="col-md-6"> <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus> @error('email') <span class="invalid-feedback" role="alert"> <strong>{{ $message }}</strong> </span> @enderror </div> </div> <div class="form-group row mb-0"> <div class="col-md-6 offset-md-4"> <button type="submit" class="btn btn-primary"> {{ __('Send Password Reset Link') }} </button> </div> </div> </form> </div> </div> </div> </div> </div> @endsection

試したこと

・ @csrf追加
・Route::match([get,post]~の実装

補足情報(FW/ツールのバージョンなど)

Laravel6.0

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

javahack
javahack

2020/07/29 12:59

同様のエラーに関する質問を解決したのなら自己解決可能では? https://teratail\.com/questions/276094
norirnori
norirnori

2020/07/29 13:11 編集

書き間違い
kuwabaraakinori
kuwabaraakinori

2020/07/29 13:24

前回のものは@csrfが抜けていたので、エラーをはいていました。今回は、@csrfを入れているのにエラーをはいているので、今回質問しました。言葉足らずですいません。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

POST

POSTはHTTPプロトコルのリクエストメソッドです。ファイルをアップロードしたときや入力フォームが送信されたときなど、クライアントがデータをサーバに送る際に利用されます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

パスワード

パスワードは主に情報にアクセスする際に扱われます。主に、アクセス可能なユーザーを限定する手段として使われます。

CSRF

クロスサイトリクエストフォージェリ (Cross site request forgeries、CSRF)は、 外部Webページから、HTTPリクエストによって、 Webサイトの機能の一部が実行されてしまうWWWにおける攻撃手法です。