投稿者 |
メッセージ |
|
< PHPプログラミング ~ 転送先へのセッションの引継ぎ |
|
時間:
火 11月 07, 2006 1:45 pm
|
|
|
登録日: 2006年10月 19日
投稿記事: 8
|
|
PHPにてページをリダイレクトするとセッションが引き継がれません。
リダイレクトを行うとHTTPセッションは切断されてしまうのでしょうか?
また、対処法としてURLにセッションIDを埋め込む方法を試したのですがうまくいきません。ソースは以下の通りです。
header("Location:http://xxx.xxx.xxx.xxx/xx.php?セッションID");
exit;
間違っている所があればご指摘お願いします。 |
|
|
|
|
|
|
|
時間:
火 11月 07, 2006 5:59 pm
|
|
|
登録日: 2006年10月 13日
投稿記事: 5
|
|
初めまして。
リダイレクト時にHTTPセッションがどうなるかはちょっと勉強不足で
解りかねる部分があるのですが。
URLにセッションIDを渡してセッションを繋ぐ方法に関して、指摘がございます。
URLにセッションを埋め込む方法として、は下記サイトをご覧ください。
http://www.yc.musashi-tech.ac.jp/~yamada/doc/php/0802.html
上記サイトによりますと、http:// 〜 php?セッションネーム=セッションID
のように表記せねばならないようです。
その他現象については恥ずかしながら挙動確認しておりませんので
Locationで付加した場合でもセッション繋いでくれるか〜とかは
大変お手数ですがご自身でお確かめください。 |
_________________ 見習いプログラマ |
|
|
|
|
|
|
時間:
水 11月 08, 2006 3:09 pm
|
|
|
登録日: 2006年10月 21日
投稿記事: 13
|
|
私が動作に疑問を感じたときによくやる方法は、
最も簡単なサンプルを作って、期待する結果が得られるかテストすることです。
まずはセッション変数の登録および出力…
<?php
//test.php
session_start();
echo ++$_SESSION["count"];
?>
次は、出力せずに別ページへ…
<?php
//test.php
session_start();
++$_SESSION["count"];
header("Location:test2.php");
?>
そして、移動先で出力…
<?php
//test2.php
session_start();
echo $_SESSION["count"];
?>
セッションID が Cookie に保存されている場合、定義済み定数の「SID」は空になります。
お手元のスクリプト内でテストする場合は、定数 SID の値を確認してみてください。 |
|
|
|
|
|
|
|