質問: ### 前提・実現したいこと パスワードを入力するとデータを出力するアプリを作成しました。 間違ったパスワードを入力すると、エラーメッセージが表示される仕様なのですが、 その後、正しいパスワードを入力してもエラーメッセージが消えません。 (データは出力されます) リダイレクト先のdownload.phpはダウンロード用のコードだけを記述したファイルです。 そのため、見た目上はページ遷移は行われず、パスワードを入力するとDLが始まるように見えます。 このままの仕様で、正しいパスワード入力時にエラーメッセージを消す方法はないでしょうか? ご教授のほどよろしお願い申し上げます。 ### 該当のソースコード ``` Document ダウンロード用パスワードを入力ください パスワード ダウンロード ``` ### 試したこと リダイレクト(header("Location:download.php");)を削除し、 正しいパスワードを入力するとエラーメッセージは消えました。 この辺りが原因のようなきがしているのですが。。。 ### 補足情報(FW/ツールのバージョンなど) php ver 7.4.0 20/07/15 html部分を追記しました。 質問内容のエラーメッセージは、phpのsyntax errorではなく、 正しいパスワードが入力されなかった際の分岐処理で出力(自分で設定)している エラーメッセージです。 上記コードの中の下記の記述部分です。 ``` ``` 間違ったパスワードが入力されると「パスワードが違います」と表示されます。 紛らわしく申し訳ございません。 よろしくお願い申し上げます。
回答: `header("Location:download.php");`が実行された時点で元ページは書き換えされなくなるので、表示を消したければJavaScriptを使用するなりする必要があります。