ここではサインアウト機能を作成していきます。以下の手順で行います。
- サインアウト機能の実装(PHP)
- トップページにサインアウトのリンクを追加(PHP)
今回はサインアウトボタンを押すとセッションを破棄するということを行います。サインイン機能で用いたセッション変数があるので、それらの変数を破棄しサインアウト処理を行います。それではsignout.php
に以下を追記してください。
- signout.php
<?php
require_once 'init.php';
// セッション変数を全て解除する
$_SESSION = array();
// セッションの破壊
session_destroy();
$signin_url = "signin.php";
header("Location: {$signin_url}");
まず、ログインした際に使ったセッション変数を全て削除するために空の配列を$_SESSION
変数に格納します。
引用
$_SESSION = array();
次に`session_destroy()`関数を使ってセッションを全て破棄します。
最後サインインページ(`signin.php`)へとリダイレクトさせます。`header()`関数をつかうことで指定したURLに飛ばすことができます。
> 引用
>
>```php
$signin_url = "signin.php";
header("Location: {$signin_url}");
トップページからサインアウトできるようにしましょう。index.php
を編集していきます。<nav>
の中の、サインアウトのリンクの部分を探して下さい。以下のように、href="./signout.php"
を追記します。
- index.php
<li>
<a href="./signout.php"><span class="glyphicon glyphicon-log-out" aria-hidden="true"></span>サインアウト</a>
</li>
これで、トップページからサインアウトのリンクをクリックすることでサインアウトすることができるようになりました!ここまでで、新規登録、サインイン、サインアウトの機能が実装されたので、一度正常に動くかどうか確認してください。
確認ができたら、次に進みましょう!サインアウト機能はどんなところにも応用できる機能なので、ぜひ覚えてご活用くださいね。