バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

バグ報告 > フロント機能 > 支払方法選択ページでのエラー

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
homan
投稿日時: 2009/6/4 21:45
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: 支払方法選択ページでのエラー
引用:

seasoftさんは書きました:
homan 様

http://svn.ec-cube.net/open_trac/changeset/17711 の関連で、教えてください。

process(), mobileProcess() の中の、$arrInfo 又は $objCartSess の内容は、どこかで書き換えが行われていたと思うのですが、どこだったか把握されていらっしゃいますか?

以前に追跡した記憶があるのですが、失念してしまいまして。
もし、直ぐに分かるようでしたら、教えてください。


すみません、今ちょっと質問の内容が把握できていないのですが、
どのような書き換えでしょうか?


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

seasoft
投稿日時: 2009/6/4 21:57
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7333
Re: 支払方法選択ページでのエラー
税計算の関係だったような。非常にうろ覚えな記憶でして・・・


あっ、そもそも、勘違いしていたかもしれません。

r17711 は、全て homan 様オリジナルのコーディングと思っていたのですが、http://svn.ec-cube.net/open_trac/ticket/395 の分は、正式版(r17702)からマージしたという立場でしたかね?


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

homan
投稿日時: 2009/6/4 22:24
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: 支払方法選択ページでのエラー
引用:

あっ、そもそも、勘違いしていたかもしれません。

r17711 は、全て homan 様オリジナルのコーディングと思っていたのですが、http://svn.ec-cube.net/open_trac/ticket/395 の分は、正式版(r17702)からマージしたという立場でしたかね?


私もどのような立場であったかうるおぼえですが、弊社のお客様の元で発生した問題にて発覚したので、とりあえずメールか何かで株式会社ロックオン様に報告したように思います。その際の詳しい内容は以下のスレッドにあります。

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=3031&forum=11

その後、r17702で公式の方にはコミットされたようですが、どうやらコミュニティ版の方にはコミットされなかったようで、別の問題であった「支払方法を選択しなければエラーになる」問題を修正したものをr17711としてコミットしました。その際に「r17702と同じ修正内容」+「支払方法を選択しなくてもエラーにならないようにした修正」が r17711 としてコミュニティ版の方へコミットされた形だと思います。

引用:

seasoftさんは書きました:
税計算の関係だったような。非常にうろ覚えな記憶でして・・・


ええと、もし全く見当違いの答えであれば申し訳ありませんが、、、
カートに入れる際にセッションが更新されますので、
/data/class/pages/products/LC_Page_Products_Detail.phpの
「case 'cart':」辺りがあやしいのと、
あとは/data/class/SC_CartSession.phpあたりでしょうか・・・

まだちょっと内容が把握できていなくて、ごめんなさい。


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

seasoft
投稿日時: 2009/6/5 0:43
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7333
Re: 支払方法選択ページでのエラー
多分、参照先で homan 様が書かれている
引用:
【原因】
これは、先日の脆弱性の修正を行った部分で、選択した支払方法が金額に応じた正しいものなのかどうかをチェックするコードが追記されました。しかし、その部分に税率設定の値(5%など)がNULLになっていて適応されず、商品購入金額が実質的に「税抜の商品購入金額合計」となってしまうために発生していたようでした。
の部分です。
特に下線を引いた部分でした。

そして、私の記憶にあったのは、
http://svn.ec-cube.net/open_trac/changeset/17862
でした。
SC_Utils#sfTax の第2パラメータ以降を省略すると、メソッド自身が自動で取得しにいくように改訂しています。

根本的には SC_View#SC_View の定数「LOAD_SITEINFO」が、SC_View の動作を予想外にしている気もしますね。

ソース追いながら書いているので、支離滅裂になってしまいましたが、homan 様のヒントから、現状の把握はなんとかできました。手を加えるかは、悩むところですが・・・


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

homan
投稿日時: 2009/6/5 1:04
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: 支払方法選択ページでのエラー
引用:

seasoftさんは書きました:
多分、参照先で homan 様が書かれている
引用:
【原因】
これは、先日の脆弱性の修正を行った部分で、選択した支払方法が金額に応じた正しいものなのかどうかをチェックするコードが追記されました。しかし、その部分に税率設定の値(5%など)がNULLになっていて適応されず、商品購入金額が実質的に「税抜の商品購入金額合計」となってしまうために発生していたようでした。
の部分です。
特に下線を引いた部分でした。


あぁ、なるほど。その件であれば2008年11月10日にその不具合を見つけて株式会社ロックオン様へメールで相談し、その後、以下のように回答いただいたメールが残っていました。以下の「ご報告頂いた現象」というのは、税率がNULL扱いになって税抜価格なり、「不正なアクセス」になることがある現象のことです。

------------
ご報告頂いた現象を確認いたしました。
SC_Viewの74行目のif文のために、同一プロセス内で2度SC_Viewのインスタンスを生成したときに発生する不具合でした。

そのため税額を足したときに、選択できる支払方法テーブルが変化する場合にのみ顕在化します。
-----------

上記現象を回避したのが http://svn.ec-cube.net/open_trac/changeset/17702 や http://svn.ec-cube.net/open_trac/changeset/17711 というわけです。

取り急ぎ思い出したので、あまりお役に立てないかもしれませんが、参考になれば幸いです


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

seasoft
投稿日時: 2009/6/5 2:13
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7333
Re: 支払方法選択ページでのエラー
まさに、その部分でした。

r17702 や r17711 が、どのような意図のコードか理解できなかったのですが、「同一プロセス内で2度SC_Viewのインスタンスを生成したときに発生する不具合」という部分で最終的に繋がりました。

http://svn.ec-cube.net/open_trac/changeset/17790 によって正式版ではエンバグしていますが、EC-CUBEコミュニティ(eccube-comu) では、それをマージしても http://svn.ec-cube.net/open_trac/changeset/17862 により問題なく動作するようです。しかし、無駄な処理が残る部分がありますので、順次改善してみようと思っています。

偶然 homan 様が別スレで投稿をされているのをリアルタイムで見かけまして、お声掛けさせていただきましたが、大変に助かりました。ありがとうございます。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

FOX
投稿日時: 2009/6/6 16:55
対応状況: −−−
半人前
登録日: 2009/6/2
居住地:
投稿: 16
支払方法選択ページでのエラー
≪追記です≫


先日。
=========================================
変更前 EC-CUBE2系 変更点3
=========================================
data/class/pages/shopping/LC_Page_Shopping_Payment.php
390行目付近

$objView = new SC_MobileView();
$objSiteInfo = $objView->objSiteInfo;
$arrInfo = $objSiteInfo->data;
$objCartSess = new SC_CartSession();
$arrInfo = $objSiteInfo->data;
=========================================
変更後 EC-CUBE2系 変更点3
=========================================
上記行を削除



で不具合が解消された旨をご報告しましたが、
私の環境では、上記の行を削除してしまうと、
モバイルサイト側で購入を完了できなくなりました。


1.トップページ閲覧(OK)
2.商品一覧・詳細共に閲覧(OK)
3.ショッピングカートへ入れる(OK)
4.規格の選択(OK)
5.数量の入力(OK)
6.会員登録(OK)
7.配送先指定(OK)
8.支払方法選択(OK)
9.配送日指定(OK)

10.ご注文内容確認(NG)
  ※ AU携帯では『このページは表示できません(未対応)』
  ※ モバイルサイトをPCで確認『真っ白画面』


どちらも本来遷移すべき『mobile/shopping/confirm.php』まで行かず。
同様の不具合の方がみえましたら、情報共有お願いします。
FOX
投稿日時: 2009/6/6 17:43
対応状況: −−−
半人前
登録日: 2009/6/2
居住地:
投稿: 16
Re: 支払方法選択ページでのエラー
≪追記≫

正規版(2.4.0)のEC-CUBEを使用していますが、EC-CUBEコミュニティ(eccube-comu)用のhttp://svn.ec-cube.net/open_trac/changeset/を適用することで上記不具合は解消されたようです。

ただ、あくまでもEC-CUBEコミュニティ(eccube-comu)用なので、他に不具合が起こるかもしれません。

seasoft 様、homan 様、もし不具合が生じるとしたらどのあたりに出そうかお知恵を拝借できませんでしょうか。
宜しくお願い致します。
homan
投稿日時: 2009/6/7 12:55
対応状況: −−−
仙人
登録日: 2007/7/2
居住地: 宮崎県宮崎市
投稿: 633
Re: 支払方法選択ページでのエラー
念のため確認ですが、
http://svn.ec-cube.net/open_trac/browser/branches/comu-ver2/data/class/pages/shopping/LC_Page_Shopping_Payment.php?rev=17711

上記の257行目に相当する部分を修正し忘れていたりはしませんか?


----------------
このコミュニティでの投稿はボランティアの範囲に留めさせていただいています。個別の相談やカスタマイズは有償にて承っておりますのでご相談下さい。

[url=http://www.eccube-school.jp/]EC-CUBE

seasoft
投稿日時: 2009/6/8 2:08
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7333
Re: 支払方法選択ページでのエラー
> seasoft 様、homan 様、もし不具合が生じるとしたらどのあたりに出そうかお知恵を拝借できませんでしょうか。

http://svn.ec-cube.net/open_trac/changeset/18052 に含まれる箇所以外で、下記メソッドを呼び出す部分が放置されていると多分ヤバいです。
・SC_CartSession#getProductTotal
・SC_Helper_DB#sfTotalConfirm


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

« 1 (2) 3 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン



統計情報

総メンバー数は75,050名です
総投稿数は104,352件です

投稿数ランキング

1
seasoft
7333
2
468
3217
3
AMUAMU
2712
4
nanasess
2202
5
umebius
2085
6
yuh
1664
7
red
1535
8
h_tanaka
1189
9
tsuji
942
10
fukap
907
11
shutta
835
12
tao_s
794
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437
Copyright© EC-CUBE CO.,LTD. All Rights Reserved.