バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > dtb_products.main_commentが長すぎると送料が反映されない場合がある

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
lamps
投稿日時: 2015/1/14 15:50
対応状況: −−−
新米
登録日: 2015/1/14
居住地:
投稿: 5
dtb_products.main_commentが長すぎると送料が反映されない場合がある
[EC-CUBE] 2.12.5
[レンタルサーバ] XSERVER
[PHP] PHP 5.3.3
[データベース] MySQL 5.5.37
--------------------------------

お世話になります。
初めて投稿させて頂きます。

商品データのメインコメントが長い場合にこの現象が起きてしまうようです。
/shopping/payment.php にてお届け時間の選択ができなず、/shopping/confirm.php で送料が0円となってしまいます。

試しにメインコメントを少なくしてみたら、お届け時間の選択もでき問題なく送料も反映されました。

事象としては下記に類似しているので、dtb_session.sess_dataをlongtextにしましたが解消されていません。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=14098&forum=1

メインコメントを少なくするのは出来るだけ避けたいので、他の解決方法を探しています。

よろしくお願い致します。
red
投稿日時: 2015/1/14 20:14
対応状況: −−−
登録日: 2010/2/15
居住地: 東京都
投稿: 1570
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
メインコメントに何文字ぐらい入れているんでしょうか?
セッションには、メインコメントは入っていないので、メモリがあふれているんじゃないかと思います


----------------
EC-CUBEのカスタマイズ、トラブル解決承ります
お気軽にお問い合わせ下さい
https://www.ec-cube.net/integrate/partner/partner.php?partner_id=690

yuh
投稿日時: 2015/1/14 23:08
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
SC_CartSessionのgetCartListの中でgetDetailAndProductsClassでセッションに入れている部分があるので、それをいったん変数に受け取って
adjustSessionProductsClassを実行した上でセッションに入れなおすとかどうでしょう?
lamps
投稿日時: 2015/1/15 13:49
対応状況: −−−
新米
登録日: 2015/1/14
居住地:
投稿: 5
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
red 様

ご連絡いただきありがとうございます。

およそ340文字(530バイト)程度を超えるとこの現象が発生してしまいます。

メモリについては、memory_limitを512Mに設定していてapacheエラーも起きてないので、特に問題ないとは思っているのですが。

また、この現象が起こる場合、/shopping/confirm.php にて送料0円に加えて、「お届け先」情報も表示されていないようです。(注文完了メールでも同様)

セッションまわりが怪しいと思っているのですが、red様がおっしゃる通りsess_data自体にはmain_commentは入らないので、よくわからない状態です。。
lamps
投稿日時: 2015/1/15 14:30
対応状況: −−−
新米
登録日: 2015/1/14
居住地:
投稿: 5
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
yuh 様

ご連絡いただきありがとうございます。

$this->cartSession[$productTypeId][$i]['productsClass'] =& $objProduct->getDetailAndProductsClass($this->cartSession[$productTypeId][$i]['id']);
の部分を下記のように変更してみました。

$hoge = $objProduct->getDetailAndProductsClass($this->cartSession[$productTypeId][$i]['id']);
$this->adjustSessionProductsClass($hoge);
$this->cartSession[$productTypeId][$i]['productsClass'] = $hoge;

結果、下記メッセージが表示されカートに商品が入らなくなってしまうようです。
----------------
※ 現時点で販売していない商品が含まれておりました。該当商品をカートから削除しました。
※ 現在カート内に商品はございません。
----------------
yuh
投稿日時: 2015/1/15 14:45
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
ちょっと調べて修正しますー
yuh
投稿日時: 2015/1/16 0:36
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
SC_ProductのgetDetailAndProductsClassに

    public function getDetailAndProductsClass($productClassId)
    {
        $result = $this->getProductsClass($productClassId);
        $result = array_merge($result, $this->getDetail($result['product_id']));
        unset($result['main_comment']);
        return $result;
    }

このような形でセッションに入れる前に情報を削除する感じで行うのはどうでしょう?

lamps
投稿日時: 2015/1/16 17:07
対応状況: −−−
新米
登録日: 2015/1/14
居住地:
投稿: 5
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
yuh 様

ご連絡いただきありがとうございます。

セッションに入れる前にメインコメントを削除することで無事解決しました。
ありがとうございます。

因みにですが、今回のような事象のそもそもの原因は何が考えられますでしょうか?
なぜメインコメントが長いとこのようなことが起こるのか、いまいちわかっておりません。

もし何かわかるようでしたら、ご教授いただけると助かります。
red
投稿日時: 2015/1/16 18:18
対応状況: −−−
登録日: 2010/2/15
居住地: 東京都
投稿: 1570
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
一個の変数、今回の場合は$_SESSIONですけど
そこに入る上限を超えてしまうんだと思います
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1266281967


----------------
EC-CUBEのカスタマイズ、トラブル解決承ります
お気軽にお問い合わせ下さい
https://www.ec-cube.net/integrate/partner/partner.php?partner_id=690

lamps
投稿日時: 2015/1/16 18:49
対応状況: −−−
新米
登録日: 2015/1/14
居住地:
投稿: 5
Re: dtb_products.main_commentが長すぎると送料が反映されない場合がある
red 様

ご回答いただきありがとうございます。

memory_limitを大きめに設定していたので大丈夫だろうと高をくくっていましたが、やはりデータ量の上限を超えたことが根本原因ですね。。

いろいろ設定値を変えて試してみたいと思います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,960名です
総投稿数は110,019件です

投稿数ランキング

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