ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
$_SERVERとは
セッションを参照することでサーバからクライアント毎の情報を参照できる。
SERVER['DOCUMENT_ROOT'] のように要素指定で取得できる値が異なる。
主な要素
DOCUMENT_ROOT:ドキュメントルート。
PHP_SELF:実行中ファイルのパス。ドキュメントルートより下のパス。
HTTP_HOST:リクエストのホスト名(ローカル環境の場合、localhost)
※随時追記予定
実演
■セッションの仕組み
クライアント毎にIDが割り振られる。
IDを基にどのクライアントがどの情報を保持しているか判別する。
(実装レベルではID云々は意識する必要なし)
■PHPでのセッション情報取得方法
PHPでは$_SESSION変数を使用してクッキーの制御を行う。
セッションの開始は以下の通り。
session_start()
変数の参照方法は以下の通り。
$_SESSION[キー名]
変数の設定方法は以下の通り。
$_SESSION[キー名] = 値
セッションの破棄は以下の通り。
session_destroy();
実際の使い方は以下の例を参照。
【index.php】

<html>
<body>
<form method="GET" action="testSession.php">
<!-- テキストボックス -->
<input type="text" name="save"/>
<!-- 保存ボタン -->
<input type="submit" value="保存する"/>
</form>
<form method="GET" action="testSession2.php">
<!-- 破棄ボタン -->
<input type="submit" value="破棄する"/>
</form>
<?php
//セッション開始
session_start();
//セッションに保存した情報を表示する
if(@is_null($_SESSION['save'])) { //セッションに情報が無い場合
print "セッションには何も保存されていません";
} else { //セッションに情報がある場合
print "セッションには";
print $_SESSION['save'];
print "が保存されています。";
}
?>
</body>
</html>
テキストボックスに文字列を入れて「保存する」ボタンを押す。

【testSession.php】

<html>
<body>
<?php
//セッション開始
session_start();
//セッションに情報格納
$_SESSION['save'] = $_GET['save'];
print "セッションに情報を保存しました。";
?>
</body>
</html>
もう一度、index.phpを開くと・・・。

セッションに情報が格納されていることが確認出来る。
次に「破棄する」ボタンを押す。
【testSession2.php】

<html>
<body>
セッションを破棄しました。
<?php
session_start();
session_destroy(); //セッションの破棄
?>
</body>
</html>
もう一度、index.phpを開くと・・・。

セッションの情報が破棄されたことを確認できる。
※セッションの保存時間はphp.iniファイルの以下のパラメータで変更できる。(単位:秒)
session.gc_maxlifetime=1440
■セッションの破棄について
セッションを破棄する際の注意点としては、session_destroy関数のみではなく、$_SESSIONをnullにする必要がある。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- Wi-Fi とは|規格と世代(Wi-Fi 4〜7)・周波数帯・CSMA/CA・WPA3 NEW 2026-09-07 07:45:13
- set コマンドでシェルオプションと位置パラメータを操作 | bash 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- UE5 Get Overlapping Actorsで特定クラスだけ処理|Class Filter・Cast To 2026-09-07 07:45:13
- Linuxで特定拡張子のファイルを再帰削除|find -deleteの安全手順 2026-09-07 07:45:13
- Django CBVでテンプレートに値を渡す|get_context_data・extra_context 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
- Linux catコマンドの使い方|行番号表示・複数ファイル連結 2026-09-07 07:45:13
- unable to execute 'gcc': No such file or directory 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?