質問 > フロント機能 > 注文情報をDBに登録時に同時に顧客情報を更新しているところ |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
seike |
投稿日時: 2013/7/24 14:28
対応状況: −−−
|
常連 登録日: 2012/7/19 居住地: 投稿: 46 |
注文情報をDBに登録時に同時に顧客情報を更新しているところ お世話になります。
入力内容の確認画面で「注文完了ページへ」ボタンをクリックしたときに 注文内容をDBに登録するところで同時に顧客情報も更新していると思うのですが、 その顧客情報を更新しているところがわかりません。 LC_Page_Shopping_Confirm.php だと思うのですが、 そこに顧客情報を登録しているところが見あたりません。 (そもそも、注文情報を登録しているところもわからないのですが・・・) どなたか教えていただけないでしょうか。 よろしくお願いします。 ----------------------------------------- [EC-CUBE] 2.12.2 新規インストール [レンタルサーバ] 自前サーバー [OS] Debian 6.0.1 Linux [PHP] 5.3.3-7+squeeze [データベース] MySQL 5.1.49-3 [WEBサーバ] Apache2 2.2.16 [ブラウザ] FireFox 15.0 ------------------------------------------ |
casa |
投稿日時: 2013/7/24 15:23
対応状況: −−−
|
長老 登録日: 2011/10/3 居住地: 投稿: 210 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ こんにちわ。
以下の流れではないでしょうか。ご確認ください。 LC_Page_Shopping_Confirm::action ↓ SC_Helper_Purchase::completeOrder ↓ SC_Customer::updateOrderSummary |
seike |
投稿日時: 2013/7/24 16:15
対応状況: −−−
|
常連 登録日: 2012/7/19 居住地: 投稿: 46 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ 早速の回答、ありがとうございます。
わかりました!! SC_Customer::updateOrderSummary では buy_total, buy_time, last_buy_date, first_buy_date の4項目を更新していますが、 新たに更新項目を追加するには function updateOrderSummary の中で $arrOrderSummary に項目を追加すればいいのでしょうか・・・? |
casa |
投稿日時: 2013/7/24 17:34
対応状況: −−−
|
長老 登録日: 2011/10/3 居住地: 投稿: 210 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ はい、それで問題ないと思います。
連想配列になってるので、 $arrOrderSummary['カラム名'] = 値; とすれば更新できると思います。 |
seike |
投稿日時: 2013/7/25 13:26
対応状況: −−−
|
常連 登録日: 2012/7/19 居住地: 投稿: 46 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ ありがとうございました。
おかげさまで、うまくいきました。 SC_Customer::updateOrderSummary に GC_Utils_Ex::gfDebugLog を入れて 変数の内容(顧客情報の配列)をデバッグ出力したのですが、 一度の「注文完了ページへ」クリックで SC_Customer::updateOrderSummary を 2回通っているようなのです。 つまり、デバッグ出力が2回出力されます。 これはなぜなのでしょうか・・・? |
casa |
投稿日時: 2013/7/25 14:33
対応状況: −−−
|
長老 登録日: 2011/10/3 居住地: 投稿: 210 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ 上記でお答えしたルートの他、以下のルートでも呼ばれているので、購入完了時には必ず2度通るようです。
SC_Helper_Purchase::completeOrder SC_Helper_Purchase::registerOrderComplete SC_Helper_Purchase::registerOrder SC_Helper_Purchase::sfUpdateOrderStatus SC_Customer::updateOrderSummary dtb_order を実際に更新しているのは sfUpdateOrderStatus で、管理画面や決済モジュール等からも呼ばれるので、こちらにも処理が必要なのだと思われます。 # となると、completeOrder から直接呼ぶ処理は不要な気もしますが # トランザクションの絡みとかでしょうか。ちょっと分からないです^^; |
seike |
投稿日時: 2013/7/26 8:27
対応状況: −−−
|
常連 登録日: 2012/7/19 居住地: 投稿: 46 |
Re: 注文情報をDBに登録時に同時に顧客情報を更新しているところ ご丁寧に回答していただきありがとうございました。
おかげさまで、こちらのやりたいことは実現できました。 EC-Cubeのコードを追いかけるのは大変なのですが、 こうやって答えていただけるので、助かります。 ありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |