バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 管理画面の商品管理画面内でのメーカー検索機能

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
hirota1234
投稿日時: 2015/7/2 15:06
対応状況: −−−
新米
登録日: 2015/7/2
居住地:
投稿: 4
管理画面の商品管理画面内でのメーカー検索機能
はじめて投稿させて頂きます。

EC CUBE2.13.1で下記ページの通りにメーカー検索機能を追加したのですが複数検索するとエラーになってしまいます。(メーカーのみの検索の場合は正常に動作済み)
http://ec-cube.nakweb.com/blog/2201.html


例えばアイスカテゴリ内のAというメーカーを選んで検索すると

システムエラーが発生しました。
大変お手数ですが、サイト管理者までご連絡ください。

という表示になります。

どのように修正したら複数検索して正常に動作するでしょうか。

なかなか解決方法がわからずで投稿させていただきました。
宜しくお願い致します。
tsuji
投稿日時: 2015/7/2 16:35
対応状況: −−−
仙人
登録日: 2013/11/19
居住地:
投稿: 958
Re: 管理画面の商品管理画面内でのメーカー検索機能
hirota1234 様

システムエラーの場合、管理画面のシステム設定>EC-CUBEログ表示
のエラーログファイルにエラー内容が表示されます。

それを記載していただけるならアドバイスがいただきやすくなると思います。


----------------
****************************************
株式会社システムフレンド
辻 拓也(takuya tsuji)
改造専門店・EC-CUBE工房
****************************************

hirota1234
投稿日時: 2015/7/6 12:36
対応状況: −−−
新米
登録日: 2015/7/2
居住地:
投稿: 4
Re: 管理画面の商品管理画面内でのメーカー検索機能
ありがとうございます。

エラーログとしてはエラーが発生した日時のエラーが下記になります。
※サーバーディレクトリはディレクトリと表示しています。


Fatal error(E_USER_ERROR): DB処理でエラーが発生しました。
SQL: [SELECT COUNT(*) FROM dtb_products WHERE del_flg = 0 AND product_id IN (SELECT product_id FROM dtb_product_categories WHERE category_id IN ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$40,$41,$42,$43,$44)) AND maker_id = $45 ]
PlaceHolder: ['20']
MDB2 Error: not found
[Error message: Unable to bind to missing placeholder: 1]
on [ディレクトリ/class/SC_Query.php(1087)] from IPアドレス
login_id = ○○(0)[257bbd413acea6f600882b69465360d4]
ディレクトリ/admin/products/index.php(29): LC_Page_Admin_Products_Ex->process
ディレクトリ/class_extends/page_extends/admin/products/LC_Page_Admin_Products_Ex.php(54): LC_Page_Admin_Products->process
ディレクトリ/class/pages/admin/products/LC_Page_Admin_Products.php(79): LC_Page_Admin_Products->action
ディレクトリ/class/pages/admin/products/LC_Page_Admin_Products.php(151): LC_Page_Admin_Products->getNumberOfLines
ディレクトリ/class/pages/admin/products/LC_Page_Admin_Products.php(377): SC_Query->count
ディレクトリ/class/SC_Query.php(142): SC_Query->get
ディレクトリ/class/SC_Query.php(675): SC_Query->getOne
ディレクトリ/class/SC_Query.php(696): SC_Query->execute
ディレクトリ/class/SC_Query.php(1048): SC_Query->error
ディレクトリ/class/SC_Query.php(1087): trigger_error
tsuji
投稿日時: 2015/7/7 10:32
対応状況: −−−
仙人
登録日: 2013/11/19
居住地:
投稿: 958
Re: 管理画面の商品管理画面内でのメーカー検索機能
hirota1234 様

投稿されたデータにIPが含まれてますので隠されることをお勧めします。

引用:

SQL: [SELECT COUNT(*) FROM dtb_products WHERE del_flg = 0 AND product_id IN (SELECT product_id FROM dtb_product_categories WHERE category_id IN ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$40,$41,$42,$43,$44)) AND maker_id = $45 ]
PlaceHolder: ['20']


とあり、PlaceHolderとそれを参照する値の数が違うと言われています。
おそらく、カテゴリのIDを含めておられない状態かと思いますので、
ご確認ください。


----------------
****************************************
株式会社システムフレンド
辻 拓也(takuya tsuji)
改造専門店・EC-CUBE工房
****************************************

hirota1234
投稿日時: 2015/7/7 19:44
対応状況: −−−
新米
登録日: 2015/7/2
居住地:
投稿: 4
Re: 管理画面の商品管理画面内でのメーカー検索機能
tsuji様
ご返信有難うございます。
こういった投稿はなれないもので・・・。
IPの部分は伏せさせて頂きました。

引用:

とあり、PlaceHolderとそれを参照する値の数が違うと言われています。
おそらく、カテゴリのIDを含めておられない状態かと思いますので、
ご確認ください。


これは具体的にどのファイルにカテゴリのIDを含めるようにすれば宜しいでしょうか。

お時間ある時にお返事頂ければと思います。
tsuji
投稿日時: 2015/7/8 10:37
対応状況: −−−
仙人
登録日: 2013/11/19
居住地:
投稿: 958
Re: 管理画面の商品管理画面内でのメーカー検索機能
hirota1234 様

カスタマイズされた箇所の修正ということになりますが、
以前投稿くださった下記のエラーログを見るとLC_Page_Admin_Products.php
の修正となると思います。

引用:

ディレクトリ/class/pages/admin/products/LC_Page_Admin_Products.php(79): LC_Page_Admin_Products->action
ディレクトリ/class/pages/admin/products/LC_Page_Admin_Products.php(151): LC_Page_Admin_Products->getNumberOfLines



投稿で参考にされたURLを見てみますと、下記をカスタマイズされたのだと思います。

data/class/pages/admin/products/LC_Page_Admin_Products.php の buildQuery

それで、上記でカテゴリの検索条件を作成している部分と
EC-CUBEのデフォのソースファイルを比べて、おかしく
なっているところがないか比べてみることをお勧めいたします。


----------------
****************************************
株式会社システムフレンド
辻 拓也(takuya tsuji)
改造専門店・EC-CUBE工房
****************************************

hirota1234
投稿日時: 2015/7/9 15:34
対応状況: −−−
新米
登録日: 2015/7/2
居住地:
投稿: 4
Re: 管理画面の商品管理画面内でのメーカー検索機能
すみませんがデフォルトのソースファイルと比べてどこがおかしくなっているかどうかがわかりません。

現在LC_Page_Admin_Products.phpで修正したソースが下記の部分になります。


            // 商品ステータス
            case 'search_product_statuses':
                $arrPartVal = $objFormParam->getValue($key);
                $count = count($arrPartVal);
                if ($count >= 1) {
                    $where .= ' '
                        . 'AND product_id IN ('
                        . '    SELECT product_id FROM dtb_product_status WHERE product_status_id IN (' . SC_Utils_Ex::repeatStrWithSeparator('?', $count) . ')'
                        . ')';
                    $arrValues = array_merge($arrValues, $arrPartVal);
                }
                break;
                case 'search_maker_id':
                $where.= ' AND maker_id = ?';
                $arrValues = $objFormParam->getValue($key);
                break;
                            default:
                break;
        }


現状はこのようなソースを実装していますがこれに何か付け加えるイメージでしょうか?
お時間ある時にまたご返信頂ければありがたいです。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.