質問 > フロント機能 > マイページに特設したページでログイン者のmember_idを利用する(抽出する)ことはできますでしょうか。 |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
bio |
投稿日時: 2016/10/11 1:55
対応状況: −−−
|
一人前 登録日: 2013/3/13 居住地: 投稿: 81 |
マイページに特設したページでログイン者のmember_idを利用する(抽出する)ことはできますでしょうか。 お世話になります。どうぞご教授よろしくお願い致します。
マイページに特設したページでログイン者のmember_idを利用したいので(sc_productのクエリーで必要なため)、管理者画面のLC_Page_Admin_Index.phpを参考に以下の記述をLC_Page_Mypage_Special.phpという特設のphpに付加して試していますが、機能させることができません($this->setTemplate(MYPAGE_FRAME)の設定で画面が真っ白になり、その設定をはずせばmember_idがないためのエラーがでる)。 ***尚、同じブラウザで並行して管理者画面のLC_Page_Admin_Index.phpを開くとmember_idを抽出するので、そこで抽出されたmember_idが同じブラウザの(同時に開いている)マイページ側に渡り、その後マイページの更新ボタンを押すと、エラーアウトしていたマイページが期待したページを表示いたします。 あるいは他にやり方があるのであれば、ご教授のほどよろしくお願い致します。 **変更した記述 function action() { // パラメーター管理クラス $objFormParam = new SC_FormParam_Ex(); switch ($this->getMode()) { case 'login': //ログイン処理 $this->lfInitParam($objFormParam); $objFormParam->setParam($_POST); $this->arrErr = $this->lfCheckError($objFormParam); if (SC_Utils_Ex::isBlank($this->arrErr)) { $this->lfDoLogin($objFormParam->getValue('login_id')); **SC_Response_Ex::sendRedirect(MYPAGE_URLPATH); } else { // ブルートフォースアタック対策 // ログイン失敗時に遅延させる sleep(LOGIN_RETRY_INTERVAL); SC_Utils_Ex::sfDispError(LOGIN_ERROR); } break; default: break; } // 管理者ログインテンプレートフレームの設定 **$this->setTemplate(MYPAGE_FRAME); } function lfDoLogin($login_id) { $objQuery =& SC_Query_Ex::getSingletonInstance(); //メンバー情報取得 $cols = 'member_id, authority, login_date, name'; $table = 'dtb_member'; $where = 'login_id = ?'; $arrData = $objQuery->getRow($cols, $table, $where, array($login_id)); // セッション登録 $sid = $this->lfSetLoginSession($arrData['member_id'], $login_id, $arrData['authority'], $arrData['name'], $arrData['login_date']); // ログイン情報記録 $this->lfSetLoginData($sid, $arrData['member_id'], $login_id, $arrData['authority'], $arrData['login_date']); } function lfSetLoginSession($member_id, $login_id, $authority, $login_name, $last_login) { $objSess = new SC_Session_Ex(); // 認証済みの設定 $objSess->SetSession('cert', CERT_STRING); $objSess->SetSession('member_id', $member_id); $objSess->SetSession('login_id', $login_id); $objSess->SetSession('authority', $authority); $objSess->SetSession('login_name', $login_name); $objSess->SetSession('uniqid', $objSess->getUniqId()); if (SC_Utils_Ex::isBlank($last_login)) { $objSess->SetSession('last_login', date('Y-m-d H:i:s')); } else { $objSess->SetSession('last_login', $last_login); } return $objSess->GetSID(); } function lfSetLoginData($sid, $member_id, $login_id, $authority, $last_login) { // ログイン記録ログ出力 $str_log = "login: user=$login_id($member_id) auth=$authority " . "lastlogin=$last_login sid=$sid"; GC_Utils_Ex::gfPrintLog($str_log); // 最終ログイン日時更新 $objQuery =& SC_Query_Ex::getSingletonInstance(); $sqlval = array(); $sqlval['login_date'] = date('Y-m-d H:i:s'); $table = 'dtb_member'; $where = 'member_id = ?'; $objQuery->update($table, $sqlval, $where, array($member_id)); } EC-CUBE:3.0.1 PHP: 5.2.9 サーバー: Apache2.2.3 データベース: MySQL 5.0 |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» マイページに特設したページでログイン者のmember_idを利用する(抽出する)ことはできますでしょうか。 | bio | 2016/10/11 1:55 |
Re: マイページに特設したページでログイン者のmember_idを利用する(抽出する)ことはできますでしょうか。 | bio | 2016/10/14 1:46 |