バグ報告 > 管理機能 > 規格の設定数を増やすと規格設定したすべてが反映されない |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mizuvan |
投稿日時: 2014/11/6 11:54
対応状況: −−−
|
長老 登録日: 2013/3/26 居住地: 投稿: 253 |
規格の設定数を増やすと規格設定したすべてが反映されない 規格?に3個
規格?に27個 計81通りの商品を登録しようとすると 商品管理>商品登録(商品規格) で商品に規格を適応する画面で 全選択して確認ページへいくと81個中54個しかチェックできない ただ、その後商品データを確認すると81個が規格は登録済み この状態でCSVをアップロードで編集しというとすると アップロード時にサーバーエラーが発生します。 500 error Internal Server Error CGIもしくはSSIが正しく動作していません。 レンタルサーバー 以下の状況が考えられます。 • 指定されたページの CGI が異常終了している。 • 指定されたページの CGI のパーミッションが間違っている。 • 指定されたページの CGI が間違ったモードで転送されている。 php_value max_input_vars 1000 の条件です。 EC-CUBEバージョン:2.13.2 PHP情報:5.3.28 DB情報:MySQL 5.6.13-log |
yuh |
投稿日時: 2014/11/6 12:31
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない 一つの規格に対して15〜20程度の項目があるので、
15〜20 × 81で1215〜1620くらいPOSTする項目があります。 なのでphp_value max_input_vars 1000 の条件を超えたのが原因です。 CSVのエラーに関してはエラーログをお願いします。 |
mizuvan |
投稿日時: 2014/11/6 16:23
対応状況: −−−
|
長老 登録日: 2013/3/26 居住地: 投稿: 253 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない ありがとうございます
ちなみにこの状況がエックスサーバーでしたら問題なく動作いたしました。 エックスサーバーでは、max_input_varsの設定は特にしていません。 ヘテムルですと今回のmax_input_varsが 1000までと制限されていますので無理ということのようですね・・・ エラーログは下記の通りです。 /data/logs/error.log 引用: 2014/11/06 12:41:11 [*****/products/upload_csv.php] Warning(E_WARNING): constant(): Couldn't find constant on [*****/data/class/pages/admin/products/LC_Page_Admin_Products_UploadCSV.php(352)] from ***.***.***.*** ただ、今回CSVのアップロード時だけでなく管理画面上での操作でも登録ができていません。 あと、教えていただいた件で詳しくお聞きしたいのですが 引用: 一つの規格に対して15〜20程度の項目があるので、 1つの規格に対して15〜20項目ということでしたら 今回81通りのところを50通りに抑えたら50通り×最大20項目として1000としておけばこの点については問題がないという解釈でも良いものなのでしょうか |
yuh |
投稿日時: 2014/11/6 17:23
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない 一応ループ内のPOSTされる数をざっくり数えただけなのでループ外のものも含まれます。
ごまかしとして、ダウンロード商品を使用しないのであれば その部分をごっそり排除するとか、 product_type_idは一つしか使わないのであれば、その部分を消してしまって、PHP側で受け取って使う部分に固定値を入れてしまう等で限界は少し上がると思います。 テンプレート内のソースを確認していただくのがよろしいかと思います。 |
mizuvan |
投稿日時: 2014/11/6 18:52
対応状況: −−−
|
長老 登録日: 2013/3/26 居住地: 投稿: 253 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない なるほど、そういった考え方ができるわけですね
アドバイスいただき大変助かります! 利用しないものを排除していけばもう少し増やせそうです 項目数とはたとえば dtb_classのテーブルで class_id、name、rank、creator_id、create_date、update_date、del_flg dtb_classcategoryのテーブルで classcategory_id、name、class_id、rank、creator_id、create_date、update_date、del_flg これらの参照?する個数のことを考えていけばよいという意味なのでしょうか |
yuh |
投稿日時: 2014/11/6 23:30
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない product_class.tplの
<input type="hidden" name="<!--{$key}-->[<!--{$index}-->]" value="<!--{$arrForm[$key].value[$index]|h}-->" /> の部分でproduct_type_idやdown_filename、down_realfilename、tax_rate等を消してしまって、INSERT/UPDATEする部分で固定値で入れてしまえばPOSTする値を減らすことができると思います。 |
mizuvan |
投稿日時: 2014/11/7 10:45
対応状況: −−−
|
長老 登録日: 2013/3/26 居住地: 投稿: 253 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない 固定値で入れるという意味がまだよく判らず調べていますが・・・
たとえば、下記のような文があるとしたら
EXIST_CHECKやSPTAB_CHECKを外すことで負担を減らせるものなのでしょうか? |
yuh |
投稿日時: 2014/11/7 11:17
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない たとえば商品が実際の商品しかなくて、ダウンロード商品を使用しないのであれば
この部分を削除してしまい、
この部分を
にして、HTML側のproduct_type_id・down_filename・down_realfilename・upload_indexの<input type>をそのまま削除してしまう感じですね。 |
mizuvan |
投稿日時: 2014/11/7 12:40
対応状況: −−−
|
長老 登録日: 2013/3/26 居住地: 投稿: 253 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない とてもわかりやすい説明をいただき感謝します!
理屈がよくわかりました。 あと、教えていただいた内容で不要な項目を排除し 規格を2つ使っていたところを1つに絞り項目数は50個としました。 300商品あるうちの1つだけにこの規格の設定をしてCSVアップロードに成功はしたのですが、15商品ぐらいに規格を設定した場合にCSVアップロードしたところ今回問題となっていた一緒のエラーになってしまいました。 この結果から、仕組みがよくわからなくなっているのですが 商品数が増えればまた何かしらの許容値を超えること(例えば、php_value max_input_vars 1000 の値など)がありうるのでしょうか |
yuh |
投稿日時: 2014/11/7 12:42
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 規格の設定数を増やすと規格設定したすべてが反映されない CSVに関しては結構途中で止まったりするので、ブラウザからのアップロードではなく、FTPでのアップロードに切り替えたりするとうまくいったりしました。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |