Home > PHP > PHPでセッション管理

PHPでセッション管理

  • Posted by: zaru
  • 2005年5月15日 23:10
  • PHP

今まさに仕事でやっていて気が付いたメモ。というか、今までなんで使わなかったんだろう?と思ったりもする初歩的な部分 :(

PHPでセッションを使うときに、スクリプトによっては、セッションを混同させたくない場合がある。例えば、a.phpでは $_SESSION['test'] に「a」という文字列を、b.phpでは $_SESSION['test'] に「b」という文字列を保存しておきたい場合だ。

a.phpコード
session_start();
$_SESSION['test'] = 'a';
b.phpコード
session_start();
$_SESSION['test'] = 'b';
c.phpコード
session_start();
print $_SESSION['test'];

これだと、当然a.phpにアクセスすれば、$_SESSION['test']に「a」が、b.phpにアクセスすれば$_SESSION['test']に「b」が入る。

これを住み分けるにはsession_name()を使う。これで、セッションの名前を設定してやれば、それぞれのスクリプトで違ったセッションを使うことができる。

a.phpコード
session_name("aaa");
session_start();
$_SESSION['test'] = 'a';
b.phpコード
session_name("bbb");
session_start();
$_SESSION['test'] = 'b';
c.phpコード
session_name("aaa");
session_start();
print $_SESSION['test'];

こうすると、c.phpにアクセスした場合は、a.phpの$_SESSION変数のみが表示されるようになる。

Comments:0

Comment Form

Trackbacks:0

TrackBack URL for this entry
http://blog.tofu-kun.org/mt-tb.cgi/20
Listed below are links to weblogs that reference
PHPでセッション管理 from Webプログラマー+WebデザイナーなZARU日記

Home > PHP > PHPでセッション管理

Profile

zaru

Name : zaru

Webプログラマ+Webデザイナで、Webディレクタやってます。Twitterやっているので、ぜひフォローしてやってくださいませ。Twitter - zaru。また、そのほかのプロフィールについては、iddy - zaruを見てください。

Search
Feeds
Others

Return to page top