[geeklogjp-devel 718] Issue 96 in geeklog-jp: 携帯 ログイン中に検索した後,ログアウトされる

アーカイブの一覧に戻る

geekl****@googl***** geekl****@googl*****
2009年 10月 20日 (火) 04:00:30 JST


Comment #1 on issue 96 by hirorongl: 携帯 ログイン中に検索した後,ログアウ 
トされる
http://code.google.com/p/geeklog-jp/issues/detail?id=96

携帯ハックにてサイト内<a>リンクや<form>のactionのURLに携帯用のセッションIDを 
付加して
ログイン状態を携帯にて持って回る仕組みになっております。

ただ、この検索の<form>はmethodがgetになっており、getでは送信される<input>の 
値だけが、
URLとして渡されて、<form action="search.php?SESSID=1234567890"  
method="get">などのよ
うに、していてもSESSIDは送信されないようです。
※末尾に記載するコードでテストしてみましたが、getはだめでpostではOKなようで 
す。

以上から、2点の対応方法が考えられます。

1.検索のテンプレートファイルなどへ <input type="hidden"  
name="%MOBILE_SESSID_NAME%"
value="%MOBILE_SESSID_VALUE%"> といったものを埋めこみ、携帯ハックないで埋め 
こむ方法。

2.正規表現を使い<from>のactionのURLを置換している部分をpostとgetで正規表現 
の処理を
分け、get時には<form>のすぐ後に上記1.のようなhiddenのinputも付加して置換す 
る方法。


これらは正規表現がすぐに出来る方がいれば2で良いと思われますが、正規表現を正 
しく書か
ないといけません。1のほうはテーマにも関係するので簡単ですが良い方法といえる 
かどう
か、といったところだと思います。


<テストしたコード>
* 送信用のフォームHTML (methodをgetとpostと変更してテスト送信します)
<html>
<head><title>test form</title></head>
<body><form action="test.php?SESSID=1234567890" method="get"><input  
type="text"
name="text1"><input type="submit" value="送信"></form></body>
</html>

* 送信を受信するPHP
<?php
$disp = "Request value!<br>\n";
foreach ($_REQUEST as $k => $v) {
     $disp .= "  {$k}: {$v}<br>\n";
}
echo $disp;
?>


--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings




Geeklogjp-devel メーリングリストの案内
アーカイブの一覧に戻る