PHPでheader関数を使ってリダイレクト先で変数を使う方法

PHPでheader関数を使ってリダイレクト先で変数を使う方法

8 回閲覧されました

みなさんこんにちは、jonioです。

今回はheader関数でリダイレクトをした時にリダイレクト先で変数を使う為のメモになります。

今回はリダイレクトをした時にフラッシュメッセージを表示します。

Laravelの無料学習サイトを作りました

Laravelを勉強したい人向けの無料の学習サイトを作りました。

ここからリンクに飛べますのでぜひ利用してください。

header関数の記述

下記の記述をします。

header("Location: index.php?result=success");

index.php?result=success」の記述がリダイレクトをする際に変数を渡しています。

index.phpがリダイレクト先でresultがクエリパラメーターでsuccessがリダイレクト先に渡す変数です。

「=」の前後はスペースをつけると動作しないので注意しましょう。

リダイレクト先

下記の記述をします。

<?php if (isset($_GET['result']) && $_GET['result'] == 'success'): ?>
    Flash Message
<?php endif ?>

ページを表示した時に「result」があるかのチェックをしていますが初めてページを表示した時にresultはなくてエラーになるので「isset($_GET[‘result’])」の記述をしています。

resultとsuccessはheader関数に記述したのに対応しています。

これでリダイレクト先に変数を渡すことができます。

リダイレクトした時にURLは下記になります。

http://localhost/index.php?result=success