[PHP-users 13696] Re: セッションID の取得

Tybalt of Capulet php-users@php.gr.jp
2003年3月04日 01:37:12 +0900


神崎です。
> もちろんそれで取り出せのでしょうけど,セッション処理関数を使っているの
> なら,session_set_save_handlerを使うんでしょうねえ.

そうです。session_set_save_handlerを使っています。
> でも,それを使っているんだったら,こういう質問はでないような気もするか
> らどうなのでしょう?

何か私が根本的な間違いをしている気がします。
セッションの書き込みは、
$row = mysql_select_db($dbname,$con) or die(mysql_error());
$result = mysql_query("REPLACE INTO ses_tbl (id,sesid) VALUES ('$id','$sess_data')",$con) or die(mysql_error());
if($result){
 return(true);
}else{
 return(false);
}
また、読み込みは
$row = mysql_select_db($dbname,$con) or die(mysql_error());
$result = mysql_query("SELECT id,sesid FROM ses_tbl WHERE id = '$id'", $con) or die(mysql_error());
if(mysql_num_rows($result) == 0) {
 return("");
}
$row = mysql_fetch_array($result);
mysql_free_result($result);
return($row["sesid"]);
このような感じです。
またテーブル構造は下記のようになっています。
create table ses_tbl (
id VARCHAR(255) NOT NULL,
sid VARCHAR(255),
inputday TIMESTAMP,
primary key (id)
)
このidにセッションIDが保存されるようになっています。
sidにはセッションが確立したあと、各セッション変数の
変数名と値が入るようになっています。
今割り当てられているセッションIDをどうにかして
知りたいのですがどのようにすればよいのでしょうか?
うまく書けなくてすいませんが、おわかりの方教えていただけないでしょうか?

AltStyle によって変換されたページ (->オリジナル) /