PHPでWEBサイトのログイン機能を実装するにあたり、重要ポイントをメモしておきます。どうも他のサイトでは、肝心な部分なのに記載していないところが多いです。
session_start();
セッション管理を行う場合には、必ずこのコードの記述が必要です。
ただし、このコードはHTML出力の前に行わなければなりません。
この前に行わないと
session_start(): Session cannot be started after headers have already been sent in
このエラーメッセージがerror_logファイルの中に吐き出されます。error_logファイルは、phpの実行パスの中に自動で作成されます。エラーが出る度にファイルサイズが大きくなっていくので一定のタイミングで削除しましょう。
session関連の値
セッション名:session_name()
セッションID:session_id()
セッションデータの保存パス:session_save_path()
セッションを破棄する
// セッション開始
session_start();
// セッションの値を初期化
$_SESSION = array();
// セッションを破棄
session_destroy();
セッションを破棄する為には、このコードをセットで使用します。
おまけ
リファラを取得
$referer = $_SERVER[‘HTTP_REFERER’];
echo “リファラ[“.$referer.”]”;