バージョン選択

フォーラム

メニュー

オンライン状況

76 人のユーザが現在オンラインです。 (67 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 76
もっと...

サイト内検索

質問 > フロント機能 > マイページに特設したページでログイン者の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

bio
投稿日時: 2016/10/14 1:46
対応状況: −−−
一人前
登録日: 2013/3/13
居住地:
投稿: 81
Re: マイページに特設したページでログイン者のmember_idを利用する(抽出する)ことはできますでしょうか。
いろいろと試しておりますが、どうしてもマイページ内でmember_idを抽出することができません。

LC_Page_Mypage.phpから呼び出されているLC_Page_AbstractMypage.phpに以下の記述がありますが、これをmember_idを引き出すことに利用はできないのでしょうか。

$this->tpl_member_id = $_SESSION['member_id'];

どの様な方法でも宜しいのでなんとか方法はございませんでしょうか、あるいは参考にできそうな他ファイルはございませんでしょうか。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,307名です
総投稿数は109,692件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.