バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
mtec
投稿日時: 2015/1/30 21:36
対応状況: −−−
常連
登録日: 2014/11/18
居住地:
投稿: 60
受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
カート内で、同じ商品でも$koumoku1の内容が違うかどうかを判別し、
もし$koumoku1の内容が違う場合は別の商品として扱うようにSC_CartSession.phpにて以下のように記述しました。

//以下のようにカートに追加
public function addProduct($product_class_id, $quantity,$koumoku1){
{

//新しく追加した項目に変更がないかチェックする命令を記述
public function checkChangeCart($productTypeId,$koumoku1){

}
購入完了まで問題なくOKなのですが、受注管理にて問題が発生し、
同じ商品で、$koumoku1の内容が違うものを2つ注文した場合に、

管理画面の受注管理の受注管理にて、
受注管理>受注登録
の画面にて、「この内容にて登録する」のボタンをクリックすると
「システムエラーが発生しました。大変お手数ですが、サイト管理者までご連絡ください。」
と表示されてしまいます。





エラーログは以下のように出ます

Fatal error(E_USER_ERROR): DB処理でエラーが発生しました。
SQL: [PREPARE mdb2_statement_mysql_5259ef965bd4cdb6e30ce601628402ad8d1e87d65b FROM 'INSERT INTO dtb_shipment_item(product_class_id,product_code,product_name,price,quantity,order_id,shipping_id,classcategory_name1,classcategory_name2) SELECT ?,?,?,?,?,?,?,?,?']
PlaceHolder: [array (
0 => '711',
1 => '****',
2 => '******',
3 => '111111',
4 => '1',
5 => '1111',
6 => '0',
7 => NULL,
8 => NULL,
)]
MDB2 Error: constraint violation
_doQuery: [Error message: Could not execute statement]
[Last executed query: EXECUTE mdb2_statement_mysql_5259ef965bd4cdb6e30ce601628402ad8d1e87d65b USING @0, @1, @2, @3, @4, @5, @6, @7, @8]
[Native code: 1062]
[Native message: Duplicate entry '0-711-9128' for key 'PRIMARY']
on [/home/vuser/9/5/0200659/data/class/SC_Query.php(1087)] from *********
login_id = admin(0)[f109dfdfsfawefasdfsdff3769dc8e8f6ecaf]
/home/vuser/9/5/0200659/www.*****.jp/admin/order/edit.php(29): LC_Page_Admin_Order_Edit_Ex->process
/home/vuser/9/5/0200659/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php(54): LC_Page_Admin_Order_Edit->process
/home/vuser/9/5/0200659/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(135): LC_Page_Admin_Order_Edit->action
/home/vuser/9/5/0200659/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(197): LC_Page_Admin_Order_Edit->doRegister
/home/vuser/9/5/0200659/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(879): SC_Helper_Purchase->registerShipmentItem
/home/vuser/9/5/0200659/data/class/helper/SC_Helper_Purchase.php(771): SC_Query->insert
/home/vuser/9/5/0200659/data/class/SC_Query.php(567): SC_Query->query
/home/vuser/9/5/0200659/data/class/SC_Query.php(865): SC_Query->execute
/home/vuser/9/5/0200659/data/class/SC_Query.php(1048): SC_Query->error
/home/vuser/9/5/0200659/data/class/SC_Query.php(1087): trigger_error


どなたか助けていただけますと幸いです
yuh
投稿日時: 2015/1/30 21:55
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
dtb_shipment_itemはshipping_id、product_class_id、order_idの3つでPRIMARYKEYにしてるので、そのままだとそのエラーが出ます。
直す方法としてはdtb_shipment_itemに$koumoku1を保存するフィールドを追加して、shipping_id、product_class_id、order_idの3つでPRIMARYKEYを張られているやつをいったん削除して、
shipping_id、product_class_id、order_id、$koumoku1の4つでPRIMARYKEYを張りなおすと直ります。

ただ、$koumoku1をdtb_shipment_itemに保存するように修正しないとまた同じバグが出ます。
mtec
投稿日時: 2015/2/2 23:00
対応状況: −−−
常連
登録日: 2014/11/18
居住地:
投稿: 60
Re: 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
回答いただきまして、心よりお礼申し上げます。

おっしゃられました通りに、

dtb_shipment_itemテーブルに、koumoku1を追加して、
PRIMARYKEYに設定しました。

ただ、その後、koumoku1フィールドにどのようにして
値を格納すれば良いかが疑問になりました。

エラーメッセージどおり、LC_Page_Admin_Order_Edit.phpかとは
思いますが、どの部分を編集すれば良いかが分かりません。

ご教授いただけますと幸いです。
yuh
投稿日時: 2015/2/3 0:14
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
SC_Helper_PurchaseのregisterShipmentItemに値がわたるように調整していってください。
mtec
投稿日時: 2015/2/3 18:24
対応状況: −−−
常連
登録日: 2014/11/18
居住地:
投稿: 60
Re: 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
たびたびのご回答ありがとうございます。

商品購入時のタイミングで、registerShipmentItemに
値が渡るような仕様になっていると思うのですが、

どのファイルをいじってよいのかが分かりません。

ご教授いただけると幸いです。
yuh
投稿日時: 2015/2/3 18:56
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 受注管理にて同じ商品を2つ注文した場合にシステムエラーが出てしまいます。
SC_Helper_Purchase
です。

$_SESSION['shipping']に対して値が入ってないとかですかね?
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1291
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.