質問 > フロント機能 > 仮会員を無効にしていても、仮会員として登録されてしまう |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
nakamori |
投稿日時: 2019/1/11 13:09
対応状況: −−−
|
半人前 ![]() ![]() 登録日: 2018/4/25 居住地: 投稿: 18 |
仮会員を無効にしていても、仮会員として登録されてしまう ▼テンプレート
[EC-CUBE] EC-CUBE 3.0.16 [レンタルサーバ] カゴヤ [OS] Linux [PHP] 7.0 [データベース] MySQL5.6 管理画面の基本情報設定で、仮会員は無効にしています。 会員登録すると、通常は即本会員になりますが、 「ログインできない」というお客様から問い合わせがあり、 確認すると仮会員の状態で、dtb_customerのstatusが1になっていました。 その他の登録内容では特に不自然な点は見当たらず、 create_dateとupdate_dateも一致しているため、 会員登録後に更新されたわけではなさそうです。 非常にレアなケースかと思いますが、 仮会員になってしまう条件として、どんなことが考えられるでしょうか? 会員管理系のプラグインとしては、「会員ランクプラグイン for EC-CUBE3」を 使用しており、該当会員には初期ランクが適応されていました。 |
468 |
投稿日時: 2019/1/11 23:25
対応状況: −−−
|
神 ![]() ![]() 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 仮会員を無効にしていても、仮会員として登録されてしまう 基本情報設定の仮会員を無効にしていた場合、デフォルトでは発生する事のない現象かと思います。
可能であれば、試しにダミーの情報で会員の新規登録を行い、結果を確認する事は難しいでしょうか? 本当は、プラグインを無効にした状態での会員の新規登録が確認できれば、 問題点の切り分けもしっかりと行えそうですが、 既に本番稼働してる環境であれば、プラグインの無効化まではしないほうがよさそうですね。 (テスト環境があれば良いのですが)
|
h_tanaka |
投稿日時: 2019/2/18 17:32
対応状況: −−−
|
神 ![]() ![]() 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1402 |
Re: 仮会員を無効にしていても、仮会員として登録されてしまう こちらでも同様の問題があり、解決しました。
現象としては、本会員登録すると、本会員登録完了ページが表示され、完了メールも飛ばされるのですが、会員ログインすることができず、会員管理で確認すると仮会員になってしまっていました。 仮会員の有効/無効によらず再現しました。 また、ソースとDBをまるごとコピーして検証環境を構築しましたが、何故か再現しませんでした。 こちらでは「お友達紹介プラグインwithP」を導入しており、管理画面の会員登録時にエラーを起こしていました。 このエラーを解決することで、フロントで本会員登録できるようになりました。 ただ、不思議なことにエラーが発生していた処理のフックポイントが管理画面の会員登録だけであり、なぜフロントで本会員登録できなかったのかがわかりませんでした。 本問題の対策としては、会員に関するプラグインを無効化、できなければevent.ymlをすべてコメントアウトすることで、どのプラグインが原因かの切り分けは可能かと思われます。
|
h_tanaka |
投稿日時: 2019/2/20 11:33
対応状況: −−−
|
神 ![]() ![]() 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1402 |
Re: 仮会員を無効にしていても、仮会員として登録されてしまう こちら、解決にいたっていませんでした。
ブラウザや端末を変えたり、システムやブラウザのセッションを削除したりして、何度か会員登録を試してみましたが、再現したりしなかったりします。 確実に再現させられる条件はまだわかっていません。 本会員登録できていない場合も、システムログには、次のようにアクティベート時の一連の処理の流れは出力されています。
|
h_tanaka |
投稿日時: 2019/2/20 15:44
対応状況: −−−
|
神 ![]() ![]() 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1402 |
Re: 仮会員を無効にしていても、仮会員として登録されてしまう 本件、おそらく解決しました。
src/Eccube/Controller/EntryController.php activate() 内、flush() の直後にトランザクションをcommitするようにしたところ、現象が起こらなくなりました。 (下記のソース内で★の処理を追加) おそらくどこかでトランザクションが開始されたままcommitもrollbackもされず、DBに保存されなかったのだと思われます。 ただ、トランザクションを開始にしっぱなしにしているような怪しいソースはどこにも見当たらず、ログにもエラー等は出力されていなかったです。 また、再現条件も不明なままのため、確実に解決したかどうかはわかりません。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |