質問 > 管理機能 > 商品登録(商品規格)の数が多い際のエラーについて |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
meh |
投稿日時: 2014/2/24 16:31
対応状況: −−−
|
新米 登録日: 2014/2/24 居住地: 投稿: 2 |
商品登録(商品規格)の数が多い際のエラーについて いつもこのフォーラムを拝見させて頂き、
開発をさせていただいております。 今回はどうしても解決出来ない問題がありまして、 みなさんのお知恵をお借りできたらと思います。 初めての投稿で不慣れなこともあるかとは思いますが、 教えていただければ幸いです。 現在ECCUBEの情報は以下となっております。 [EC-CUBE] 2.13.1新規インストール [レンタルサーバ] ECCUBEクラウド(niftyクラウド) [OS] Windows7 64bit [PHP] 5.4.8 [データベース] PostgreSQL 9.2.4 [WEBサーバ] Apache [ブラウザ] FireFox27.0.1 ECCUBEの新規作成をECCUBEで進めさせていただき、 規格を 「カラー」と「サイズ」の2種類作成させて頂いております。 「カラー」を21種類 「サイズ」を5種類 登録させていただきました。 1、商品登録(商品規格)で商品リストのチェック項目に一つもチェックしない場合。 リストの下に空白でいくつかのNULLが出現します。 表に空白がいくつか表示されて、文字が入力されている箇所の途中から、表示がなくなっている。 2、商品登録(商品規格)で商品リストのチェック項目に一つ以上チェックした場合。 確認画面では、何もエラーは出なく 登録完了画面でシステムエラー。 デバッグモードで確認したところ、DB処理でエラーが発生。 null value in column "classcategory_id1" violates not-null constraint.. のようなNULLが渡されているようでした。 様々なフォーラムで同じような現象でお困りの方の記述を参考にさせていただき、 phpの設定で「max_input_vars」の数値を超えた部分のデータが削除されてPOSTされていると判明しました。 そこで、 .htaccessで設定を変更しようとさせていただいたのですが、 ECCUBEクラウドで問い合わせたところhtaccessではmax_input_varsは変更出来ず、 .user.iniを使用してほしいとの回答でした。 そこで .user.iniで max_input_vars 2000 と記述し、 phpinfoが使用出来ないので、 ini_get_allで確認をしたところ、反映がされておりません。 お問い合わせでは、user.iniでの設定等は回答出来ないとのことで、色々調べましたが解決出来そうにありません。 みなさんのお知恵をお借りできたら幸いでございます。 |
yuh |
投稿日時: 2014/2/24 17:49
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 商品登録(商品規格)の数が多い際のエラーについて max_input_varsが変更できないのであれば、
必要の無いフォーム(ダウンロードファイル名・ダウンロード商品用 ファイル)を削ってしまって商品種別も通常商品のみであれば削ってしまって、PHP側でパラメータを受け取る部分で追加してごまかす方法くらいしか思いつきません。 規格1・規格2に関しても削ってしまって、規格の組み合わせでどのキーになるかを持っておいてPHP側でキーから規格IDをはめ込むような感じに変更できれば、多分21種類*5種類で105の組み合わせ、 おそらく最低限必要な項目がproduct_class_id・check・product_code・stock・stock_unlimited・price01・price02 の7個で合計735、あとは検索周りのPOSTを含めて約760くらいになると思うので、max_input_varsが1000であれば動作すると思います。 ただ、多分それで作れると思いますが実際に作ったわけではないので、うまくいくかはわかりません。 |
meh |
投稿日時: 2014/2/25 19:43
対応状況: 解決済
|
新米 登録日: 2014/2/24 居住地: 投稿: 2 |
Re: 商品登録(商品規格)の数が多い際のエラーについて yuh様
回答ありがとうございます。 そうですね。 そちらも検討したのですが、クライアント様に確認したら、 規格がまだ増える可能性があるとのことでしたので、どちらにしても数値を増やす必要がありました。 ご提案いただいた方法も良いですよね。 ちなみに max_input_varsが1000のままだと、 規格数を15×5だとエラーにならず、16×5だとエラーにはならないが、空白を登録してしまう箇所が発生、17×5だとエラーで登録が出来ないという感じでした。 無事解決いたしました。 fukap様の助言で今回.user.iniを以下の様に編集いたしました。 × max_input_vars 2000 ○ max_input_vars = 2000 単に記述の問題でした。 お恥ずかしい。。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |