Session
- 2. 2
全体の流流れ(ログイン後)
l ログインが成功した後
- このユーザーの情報はどうやって、それ以降降のページに
- 引き継いだら良良いのだろうか?
ü ユーザーの情報を引き継ぐ理理由 = SQLの where 部分に必要になるから。
メールアドレス&
PASSを⼊入⼒力力する
1
HTML
2ログイン成功!
Copyright (c) 株式会社HEART QUAKE All rights reserved .
このユーザーのIDがわかる
IDを引き継ぎたい!
PHPSQL
3マイページ画⾯面
あれ?IDは何だっけ?
PHP
- 3. 3
Copyright (c) 株式会社HEART QUAKE All rights reserved .
セッション管理理
l セッション(1/3)
- プログラムは(本当はWebサーバーは)
ü 「作業は的確だけど物忘れが激しい」
ü 「⼀一度度処理理をするとすべてを忘れる」
- と考えてください。
- 前回来た⼈人と今回来た⼈人を同じ⼈人物だと認識識できません。
プログラム
(本当はWebサーバー)
ログインさせて!
はい、ログイン成功です!
私の購⼊入履履歴みせて!
あんた誰だっけ?
- 4. 4
Copyright (c) 株式会社HEART QUAKE All rights reserved .
セッション管理理
l セッション(2/3)
- そこで、
ü 「ユーザを識識別するために」
ü 「はじめにチケットをユーザに発⾏行行して」
ü 「アクセスするたびにそのチケットを⾒見見せてもらう」
ことで、ユーザを忘れないようにしました。
- この仕組みをセッション管理理といいます。
ログインさせて!
はい、ログイン成功です。あ、あとこれ持ってて
私の購⼊入履履歴みせて!あ、さっきこれもらった
ああ、あなたねプログラム
(本当はWebサーバー)
- 5. 5
l セッション(3/3)
- phpでセッションを利利⽤用するには以下のように
ü session_start(); でセッションを開始し、
ü $_SESSION[‘⾃自分で決めたタグ名’] を⽤用いて
- データを以降降のページに引き継ぎます。
Copyright (c) 株式会社HEART QUAKE All rights reserved .
セッション管理理
?php
// セッションの開始
session_start();
// データベース接続プログラム
// SELECT⽂文の実⾏行行
$sql = ”select * from deal_tbl
where user_id = {$_SESSION[’id’]}”;
?
?php
// ログイン処理理
// データベースからユーザーIDを取得
// セッションの開始
session_start();
// セッション変数に値を代⼊入
$_SESSION[’id’] = $row[’id’];
?
前のページで設定した
ユーザーIDが受け取れる
取得したユーザーIDを
セッションに設定