バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > その他 > データベースの更新機能に関わるファイルについて

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
nanana723
投稿日時: 2023/8/22 2:02
対応状況: 開発中
常連
登録日: 2023/4/6
居住地:
投稿: 42
データベースの更新機能に関わるファイルについて
[EC-CUBE] 4.1.2-p1 新規インストール
[レンタルサーバ] Xサーバー
[PHP] 7.4.33
[導入プラグインの有無]
導入プラグイン有り

・データ移行プラグイン
・商品おすすめ順並び替えプラグイン for EC-CUBE4
・商品レビュー管理プラグイン
・関連商品プラグイン
・ソニーペイメントサービス決済プラグイン
・有料テンプレートに付属していた、ブロックを追加するための独自プラグイン

[カスタマイズの有無]
カスタマイズ有り

・有料テンプレートの適用
・独自の商品検索ページ開発
 →app/Customize/Controller
  app/Customize/Form/Type
  上記にphpファイルを追加
・ヘッダーブロックに独自の商品検索ページへ遷移するためのForm追加
 →a要素をクリックするとjavascriptでトークンを送るformがsubmitされる
・特定の住所の場合に送料を変更する機能の開発
 →csvファイルを参照し、ファイルの内容に該当する住所だった場合に送料を自動で変更する
  src/Eccube/Service/PurchaseFlow/Processor/DeliveryFeePreprocessor.phpをカスタマイズ

[現象]
マイページの会員登録編集画面で「登録する」ボタンをクリックした際に入力情報の書き換えが行われず、ログイン画面に戻ってしまう。

[質問]
上記に記載した問題の原因を探るためにあれこれと試しています。
ですが、原因と思われる箇所の特定に至っていません。
まず、原因を探る方法としてやっていることがあっているのかが判断できないため、ご教授いただきたいです。

データベースの更新処理機能に関係するファイルはController、Entity、Form、Repository以外に何かありますか?

ファイル比較ソフトで初期状態のECCUBE4.1と開発中のECCUBE4.1のファイルソースの比較を行いました。
調べたのは下記のフォルダの中にあるphpファイルです。

src/Eccube/Controller
src/Eccube/Entity
src/Eccube/Form
src/Eccube/Repository

いずれも差異がないという結果で、カスタマイズした箇所は見受けられませんでした。

マイページの会員登録編集画面で「登録する」ボタンをクリックした際にデータベースの更新ができていないので、
データベースの更新で何かしらのエラーが発生していることが問題の大元の原因ではないかと推測しています。

データベースの更新に関わるファイルは上記の4つのもの以外に何かありますか?

何卒よろしくお願い申し上げます。
mcontact
投稿日時: 2023/8/22 9:22
対応状況: −−−
登録日: 2022/1/22
居住地:
投稿: 1593
Re: データベースの更新機能に関わるファイルについて
プラグイン側の各ファイルは調べたのでしょうか?


----------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
EC-CUBEインテグレートパートナー【ゴールド】ランク
M&I Works
URL: https://miworks.biz/
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

nanana723
投稿日時: 2023/8/23 1:22
対応状況: 開発中
常連
登録日: 2023/4/6
居住地:
投稿: 42
Re: データベースの更新機能に関わるファイルについて
ご返信いただき、ありがとうございます。

プラグインのフォルダの各ファイルは調査が不十分だったので、確認してみます。
ありがとうございます。

また確認できましたらご報告させていただきます。
nanana723
投稿日時: 2023/8/23 23:29
対応状況: 開発中
常連
登録日: 2023/4/6
居住地:
投稿: 42
Re: データベースの更新機能に関わるファイルについて
先日はご回答いただき、ありがとうございました。

>プラグイン側の各ファイルは調べたのでしょうか?

プラグイン側のController、Entity、Form、Repositoryを見てみましたが、会員情報編集の機能を上書きしているようなものはありませんでした。

Controller、Entity、Form、Repository以外に影響が出る可能性の高いファイルはありますか?

何卒よろしくお願い申し上げます。
nanana723
投稿日時: 2023/8/25 0:20
対応状況: −−−
常連
登録日: 2023/4/6
居住地:
投稿: 42
Re: データベースの更新機能に関わるファイルについて
追記です。


src/Eccube/Controller/Mypage/ChangeController.php
試しに上記のファイルにエラーが発生するような書き換えを行ってみたところ、
想定通りのエラーが発生したのでこのファイルを参照して処理を行っているのだと思います。

ログを確認したところ、登録ボタンをクリック後の処理であるlog_info('会員編集開始');で出力されるはずの文言が出ていませんでした。
なので、それ以前のどこかで問題が発生しているのだと考えています。

/**
     * 会員情報編集画面.
     *
     * @Route("/mypage/change", name="mypage_change", methods={"GET", "POST"})
     * @Template("Mypage/change.twig")
     */
    public function index(Request $request)
    {
		$Customer = $this->getUser();
        $LoginCustomer = clone $Customer;
        $this->entityManager->detach($LoginCustomer);

        $previous_password = $Customer->getPassword();
        $Customer->setPassword($this->eccubeConfig['eccube_default_password']);

        /* @var $builder \Symfony\Component\Form\FormBuilderInterface */
        $builder = $this->formFactory->createBuilder(EntryType::class, $Customer);

        $event = new EventArgs(
            [
                'builder' => $builder,
                'Customer' => $Customer,
            ],
            $request
        );
        $this->eventDispatcher->dispatch(EccubeEvents::FRONT_MYPAGE_CHANGE_INDEX_INITIALIZE, $event);

        /* @var $form \Symfony\Component\Form\FormInterface */
        $form = $builder->getForm();
        $form->handleRequest($request);
        
        if ($form->isSubmitted() && $form->isValid()) {
        	log_info('会員編集開始');
        (略)
        


この箇所をカスタマイズした形跡はありません。
ここまではなんとなく掴めたのですが、問題なく動いているソースとの違いがないため何が原因なのかがわかりません。

もし、$form->isSubmitted() && $form->isValid() がfalseになっているために会員情報編集が行われないのだとしたら、
ページの表示はボタンを押してもログイン画面には戻らず、会員情報編集画面のままなような気がするのですが、
まずこの認識はあっていますか?

何卒よろしくお願い申し上げます。
h_tanaka
投稿日時: 2023/8/25 11:56
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1911
Re: データベースの更新機能に関わるファイルについて
ログイン画面に戻されるのなら、URL、セッション、トークン周りの問題な気がします。

ボタンクリックでサブミットされるところや Controller に遷移されるところをデバッグすることで処理を追ってください。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

nanana723
投稿日時: 2023/8/25 22:22
対応状況: 確認中
常連
登録日: 2023/4/6
居住地:
投稿: 42
Re: データベースの更新機能に関わるファイルについて
ご回答いただき、ありがとうございます。

>ログイン画面に戻されるのなら、URL、セッション、トークン周りの問題な気がします。

URL、セッション、トークン周りの問題ということですと、下記のカスタマイズが何かしら影響していそうな気がしてきました。

>・ヘッダーブロックに独自の商品検索ページへ遷移するためのForm追加
> →a要素をクリックするとjavascriptでトークンを送るformがsubmitされる

今一度、URL、セッション、トークンに絞って確認してみます。
ありがとうございます。
またご報告させていただきます。
ゲスト
投稿日時: 2023/8/25 22:27
対応状況: −−−
Re: データベースの更新機能に関わるファイルについて
こういう人もあまりにもphpの基礎やsymfonyの基礎も出来てないんだろうな。
教えて君みたいな感じやね
nanana723
投稿日時: 2023/8/27 5:12
対応状況: 開発中
常連
登録日: 2023/4/6
居住地:
投稿: 42
Re: データベースの更新機能に関わるファイルについて
h_tanaka様

先日はご回答いただき、ありがとうございました。

>ボタンクリックでサブミットされるところや Controller に遷移されるところをデバッグすることで処理を追ってください。

submit後の動きの処理を追う方法をご教授いただくことはできますでしょうか?


https://qiita.com/s-katsumata/items/96df1ca3cf6043d49b53

上記の内容をもとにデバッグをしてみようと思ったのですが、
エックスサーバーはroot権限がなくxdebugをインストールすることができないのでは、ということくらいしかわかりませんでした。

chromeの開発者ツールだとcssやjavascriptの動きは追えますが、php側の動きやセッションが切れたかどうかを追うことができないのではという認識です。

xamppでサーバーと同一内容のローカル環境を整えてxdebugを使ってデバッグしてみるくらいしか思いつかなかったのですが
他にやり方はあるものなのでしょうか?




>・ヘッダーブロックに独自の商品検索ページへ遷移するためのForm追加
> →a要素をクリックするとjavascriptでトークンを送るformがsubmitされる

怪しいと思っていた上記のカスタマイズですが、ヘッダーブロックをレイアウトから外して処理を試しても状況は変わらなかったので
ここが原因ではなさそうでした。


何度も質問してしまい、申し訳ありません。
何卒よろしくお願い申し上げます。


追記です:

.envファイルを編集してデバッグモードにしてはいます。

ログも特に何かがわかるようなものはないです。
エラーも表示されていません。

デバッグモードにしていればブレークポイントの設定ができるなどの機能がもともとあるようでしたら、大変申し訳ありません。
ゲスト
投稿日時: 2023/8/27 12:58
対応状況: −−−
Re: データベースの更新機能に関わるファイルについて
やはりな。
1ヶ月弱から教えて君してるようだけど、EC-CUBEのドキュメントすらみていないのがばればれ。
何も理解もしていない
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は98,481名です
総投稿数は112,030件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2325
5
umebius
2085
6
h_tanaka
1911
7
yuh
1898
8
mcontact
1593
9
red
1575
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
805
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
balisys
502


ネットショップの壺

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

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