バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

 > 管理機能 > 管理画面login_idの取得

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
sh1ntqr0
投稿日時: 2016/12/2 19:32
対応状況: −−−
半人前
登録日: 2016/6/13
居住地:
投稿: 22
管理画面login_idの取得
こんばんは。
管理画面にログインした際に、誰がログインしたかどうかすぐわかるようにlogin_idが書いたlogを出力したいと思っております。

AdminControllerにlogを埋め込み、
$session->get(SecurityContext::LAST_USERNAME)
上記の式の内容を出力して実装しようと思ったのですが、
1つ前に入力したlogin_idしか取れてこないため、
1つ前のユーザーしかわかりません。

postにて取得した値をそのまま取りたいのですが、
一番簡単に取れる方法はないでしょうか?
どなたかご教授いただけないでしょうか?
どうぞよろしくお願いいたします。

EC-CUBE3.0.10を使用しています。
umebius
投稿日時: 2016/12/2 21:34
対応状況: −−−
登録日: 2016/7/22
居住地:
投稿: 2085
Re: 管理画面login_idの取得
POSTを取っているわけではありませんが、1つの方法としてsecurity.authentication.success_handlerを利用する方法がございます。

記事にしましたので、よろしければご確認ください。


●ユーザーがログイン成功/失敗したときにプログラムを実行する方法
https://umebius.com/eccube/user-authencation-handler/


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

468
投稿日時: 2016/12/5 10:54
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: 管理画面login_idの取得
/src/Eccube/EventListener/SecurityEventListener.phpに
管理画面にログイン成功した時に
そのユーザーの最終ログイン日時を更新している処理があります。
public function onInteractiveLogin(InteractiveLoginEvent $event)
    {
        $token = $event->getAuthenticationToken();

        $user = $token->getUser();
        if ($user instanceof \Eccube\Entity\Member) {
            $user->setLoginDate(new \DateTime());
            $this->entityManager->persist($user);
            $this->entityManager->flush();
        }
    }

ここで$userにログインユーザー情報を取得していますので、
$user->getId()や$user->getName()などでユーザーの情報を取得できると思います。

あと、$this->entityManagerもありますので、
DBに対する操作も簡単に行えると思います。


ログイン時のPOSTの値はログイン成功後だと取得できないと思います。
認証処理はコントローラーの前に処理されていて、
認証成功後に一度リダイレクトされているようです。
sh1ntqr0
投稿日時: 2016/12/5 16:09
対応状況: 解決済
半人前
登録日: 2016/6/13
居住地:
投稿: 22
Re: 管理画面login_idの取得
いつもお世話になっています。
記事のやり方にて実装してみると、
きちんと成功したユーザーのidが取れるようになりました。
本当にありがとうございました!
sh1ntqr0
投稿日時: 2016/12/5 16:12
対応状況: −−−
半人前
登録日: 2016/6/13
居住地:
投稿: 22
Re: 管理画面login_idの取得
丁寧に色々とアドバイスありがとうございます!
そのような箇所でも色々更新がされていたのですね。。。

今ほど違うやり方でも作業をしていたところでした。
こちらのやり方でも実装ができるか
どうかきちんと確認してみたいと思います!
本当にありがとうございました!
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
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.