バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 注文確認メールに合計点数の記載をしたい【ECCUBE2.13.5 PostgreSQL】

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
moriyanyan
投稿日時: 2017/6/5 23:34
対応状況: −−−
半人前
登録日: 2017/6/5
居住地:
投稿: 13
注文確認メールに合計点数の記載をしたい【ECCUBE2.13.5 PostgreSQL】
----------------------------------------------
[EC-CUBE]2.13.5
[レンタルサーバ] kagoya
[PHP] PHP 5.6.30
[データベース] PostgreSQL バージョン9.3.5
----------------------------------------------

【受注完了メールに商品の購入合計数を表示させたい】


上記ページを参考に注文メールに商品点数の合計を表示するカスタマイズを行いましたが、MySQLのサーバーでは成功し、PostgreSQLの場合はシステムエラーとなり、メールが送信されません。どなたか解決方法をご教授願えればと思います。


【カスタマイズ内容】

●SC_Helper_Mail.phpに下記を追加
$arrTplVar->total_quantity = $objQuery->get('sum(quantity)', 'dtb_order_detail', $where, array($order_id));

●order_mail.tplに<!--{$total_quantity}-->を追加


【EC-CUBEのエラーログ】
------------------------------------------------
FATAL Error(256) /home/hoge/eccube2_data/hogehoge/class/SC_Query.php:876 http://hogehoge.com/shopping/confirm.php?


USER_AGENT: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

SQL: SELECT sum(quantity) FROM dtb_order_detail WHERE order_id = ? ORDER BY order_detail_id

MDB2 Error: unknown error

prepare: [Error message: Unable to create prepared statement handle]
[Last executed query: SELECT * FROM dtb_order_detail WHERE order_id = $1 ORDER BY order_detail_id ]
[Native message: ERROR: column "dtb_order_detail.order_detail_id" must appear in the GROUP BY clause or be used in an aggregate function
行 1: ...OM dtb_order_detail WHERE order_id = $1 ORDER BY order_deta...
^]


/home/hoge/public_html/hogehoge/shopping/confirm.php 34:LC_Page_Shopping_Confirm_Ex->process
/home/hoge/eccube2_data/hogehoge/class_extends/page_extends/shopping/LC_Page_Shopping_Confirm_Ex.php 56:LC_Page_Shopping_Confirm->process
/home/hoge/eccube2_data/hogehoge/class/pages/shopping/LC_Page_Shopping_Confirm.php 63:LC_Page_Shopping_Confirm->action
/home/hoge/eccube2_data/hogehoge/class/pages/shopping/LC_Page_Shopping_Confirm.php 161:SC_Helper_Purchase->sendOrderMail
/home/hoge/eccube2_data/hogehoge/class/helper/SC_Helper_Purchase.php 1065:SC_Helper_Mail->sfSendOrderMail
/home/hoge/eccube2_data/hogehoge/class/helper/SC_Helper_Mail.php 104:SC_Query->get
/home/hoge/eccube2_data/hogehoge/class/SC_Query.php 586:SC_Query->getOne
/home/hoge/eccube2_data/hogehoge/class/SC_Query.php 601:SC_Query->prepare
/home/hoge/eccube2_data/hogehoge/class/SC_Query.php 873:MDB2_Driver_pgsql->prepare
/home/hoge/eccube2_data/hogehoge/module/MDB2/Driver/pgsql.php 967:MDB2_Driver_Common->raiseError
/home/hoge/eccube2_data/hogehoge/module/MDB2.php 1497:PEAR->raiseError
/home/hoge/eccube2_data/hogehoge/module/PEAR.php 557:MDB2_Error->MDB2_Error
/home/hoge/eccube2_data/hogehoge/module/MDB2.php 1009:PEAR_Error->PEAR_Error
hata
投稿日時: 2017/6/6 10:34
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 注文確認メールに合計点数の記載をしたい【ECCUBE2.13.5 PostgreSQL】
集約関数を使っているからGROUP BYに集約のキーが必要ということでしょうか。
⇒order_idでどうかと試したらorder_detail_idを要求されました。
そういうことだとそこからもう一捻り必要になるので、やっぱり↓でどうでしょうか。

/data/class/helper/SC_Helper_Mail.php sfSendOrderMail()には
OrderDetailがあるので、そこから数量を合計して算出してはどうですか
        $arrTplVar->arrOrderDetail = $objQuery->select('*', 'dtb_order_detail', $where, array($order_id));
★↑のあとで以下を追加
        $total_quantity = 0;
        foreach ($arrTplVar->arrOrderDetail as $arrDetail) {
            $total_quantity += $arrDetail['quantity'];
        }
        $arrTplVar->total_quantity = $total_quantity;


moriyanyan
投稿日時: 2017/6/6 11:50
対応状況: 解決済
半人前
登録日: 2017/6/5
居住地:
投稿: 13
Re: 注文確認メールに合計点数の記載をしたい【ECCUBE2.13.5 PostgreSQL】
hata様

お早い返信を頂き有難う御座います。
さきほど追記を行ったところ
希望通りの注文メールの動作の確認ができました。

かなり前から実装したく、そのたびに繰り返してはうまく行かず今回質問させて頂きました。

あきらめる寸前でしたが本当に助かりました。

hata様有難う御座います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1569
9
mcontact
1280
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
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.