人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

phpサンプルの一部です。 これはどのような流れで表示されているのでしょう。
function member_top($option){
$form = $option['form'];
$smarty = $option['smarty'];
$renderer = $option['renderer'];
$conn = $option['conn'];
$auth = $option['auth'];
$systemflg= $option['systemflg'];

if($systemflg){
$file = 'system_top.tpl';
$smarty->assign('title', '管理トップ画面');

unset($_SESSION['search_key']);
unset($_SESSION['userdata']);
unset($_SESSION['pageID']);

}else{
$file = 'member_top.tpl';
if(empty($_SESSION['userdata']['id'])){
$_SESSION['userdata'] = db_get_member_data($conn, $auth->username, $auth->password);
}

$smarty->assign('title', '会員トップ画面');
$smarty->assign('last_name', $_SESSION['userdata']['last_name']);
$smarty->assign('first_name', $_SESSION['userdata']['first_name']);

}

return $file;
}

●質問者: K_Fuduki
●カテゴリ:ウェブ制作
✍キーワード:EMPTY Op. password PHP Smarty
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ●
●60ポイント

まず、1行目を見てください。

member_topという関数は$optionという引数を取ります。

2行目以降、$option配列の内容を変数に代入します。

環境設定を行っています。

if($systemflg){

この部分で$systemflgの値がある場合とない場合で処理を分けています。

$systemflgに値がある場合、if($systemflg)がtrueを返しますので、その後の処理が行われます。

ここで管理者用の画面のテンプレートファイル(system_top.tpl)を読み込み、画面のタイトルを設定し、セッションの内容を初期化しています。

$systemflgが空の場合、メンバー用のテンプレートファイル(member_top.tpl)を読み込みます。

その後、$_SESSION配列に格納されたuserdataのidが空の場合、DBに接続し、$_SESSION配列にuserdataを設定します。

(以下の3行がその部分に該当します。)

if(empty($_SESSION['userdata']['id'])){
$_SESSION['userdata'] = db_get_member_data($conn, $auth->username, $auth->password);
}

その後、メンバー画面のタイトルを設定し、さらに$_SESSION配列に含まれるuserdataのlast_name、first_nameを同名のテンプレートに割り当てます。

(member_top.tpl中にlast_name、first_nameという部分があり、そこの値が置き換えられます。)

参考になれば幸いです。

[参考URL]

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ