6.

$_SERVER

ページの作成
テンプレートを更新

ページの作成

親となるページを選択してください。

ページは必ず何かしらの親ページに紐づきます。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子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. $_SERVER
  2. $_GET
  3. $_POST
  4. $_ENV
  5. $_COOKIE
  6. $_SERVER
  7. $_FILES

最近コメントのあったページ

最近の質問

コメント一覧

コメントがありません

ログインしなければコメント投稿はできません。