t_form_block, t_form でのセッション情報付加

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

OpenPNEのテンプレートファイル(.tpl)でフォームを出力する場合、t_form_block, t_form などのタグが使われています。
どうやって2種類を使い分けるかは、いまいちよく分かっていませんけど、パソコンの.tplはt_form_block、携帯の.tplはt_formを使っていることが多いようです。
以下、これらのフォーム出力タグでの、セッションIDなど自動的に付加されるhiddenフィールドのまとめ。

スポンサーリンク

({t_form_block m=pc a=page_hoge}) の場合(actionの先がpage_の場合)

<input type="hidden" name="m" value="pc" />
<input type="hidden" name="a" value="page_hoge" />

が自動でフォーム中に付加される。

({t_form_block m=pc a=do_hoge}) の場合(actionの先がdo_の場合)

<input type="hidden" name="m" value="pc" />
<input type="hidden" name="a" value="do_hoge" />
<input type="hidden" name="sessid" value="hogea91df98hoged88hoge4hoge04dad" />

が自動でフォーム中に付加される。

name=”a” value=”do_hoge” により、フレームワーク中で対象となるアクションを決定する。
do_hoge の場合、モデルでの操作アクションとなるので、ここはDBの変更操作が行われることが多いです。
そのためか、自動的にセッションID情報がhiddenフィールドに追加される仕様となっているみたいです。

携帯の.tplの場合

携帯でformをpostで送信する場合、セッションを次のページに渡すために、以下のように書く。
既存の携帯の.tplファイルは、以下のようになっているものが多い。

({t_form m=ktai a=page_hoge})
<input type="hidden" name="ksid" value="({$PHPSESSID})">

これで、ログイン状態が保持され続ける。
hiddenフィールドをハードコーディングするのはちょっと気持ち悪い感じもしますので、t_form_block が使えないか検査が必要かもしれません。

スポンサーリンク
 
スポンサーリンク