バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品規格の選択項目がカートに反映されない

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
konipu
投稿日時: 2013/1/22 17:59
対応状況: −−−
新米
登録日: 2013/1/22
居住地:
投稿: 1
Re: 商品規格の選択項目がカートに反映されない
EC-CUBE 2.12.0 で同じ現象に遭遇しました。

私の場合は、

/js/products.jsを、
最新(2.12.2)のデータで上書きすれば治りました。

products.jsの記述が若干違うようでした。

参考になるかわかりませんが。。。
mamano
投稿日時: 2011/9/19 11:21
対応状況: −−−
一人前
登録日: 2011/6/28
居住地:
投稿: 83
Re: 商品規格の選択項目がカートに反映されない
このスレッドを立ち上げた者です。

「解決」したはずだったのですが、
mattiさんの書き込みを見て、
今一度解決に至った経緯を追ってみましたが、
チンプンカンプンな解決でしたね・・・
と言いますか、category.jsは存在していませんね・・・

解決できないでいた当時は、無事に不具合が解消された事で
次の課題に進んだため、細かい事に気が回りませんでした。

私の場合、
Smarty/templates/default/site_frame.tpl 内のjavascriptファイルへのリンクの記述で「"」が抜けておりました。

<script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/rollovers.js></script>

<script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/rollovers.js"></script>

上記の修正で当該不具合が解消されましたが、
これは私のカスタム部分での記述ミスですのでmattiさんの不具合とは
全く関係無いかも知れませんが、同じようなミスはありませんかね?

matti
投稿日時: 2011/9/17 11:10
対応状況: −−−
新米
登録日: 2011/8/22
居住地:
投稿: 8
Re: 商品規格の選択項目がカートに反映されない
こんにちは。
上記の不具合はまだ解決できていないので是非誰か助けていただけないでしょうか?

モバイルでは商品規格の選択項目がカートに反映されますが
PCのみ商品規格の選択項目がカートに反映されないという不具合ですが


...products/detail.tpl
に以下のタグが無かったので追加しました。
<script type="text/javascript" src="<!--{$smarty.const.ROOT_URLPATH}-->js/category.js"></script>

それでも商品規格はカートにされません。
調べたところで
Ec cube 2.11.1 と 2.11.2のhtml/jsにcategory.jsは存在していないことを気づきました。
category.jsはhtml/jsにあるはずでしょうか?

なぜないのかは謎ですが
ソースコードを教えていただけないでしょうか?

どうぞ宜しくお願いします。
matti
投稿日時: 2011/8/24 12:20
対応状況: −−−
新米
登録日: 2011/8/22
居住地:
投稿: 8
Re: 商品規格の選択項目がカートに反映されない
こんにちは。
私は同様の不具合がります。
PCで商品規格の選択項目がカートに反映されないです。


引用:

そこで、ご指摘の通りjavascriptに原因があると絞り込み、
色々試しながら調べたところ、テンプレートファイルにcategory.jsの指定が記述されておらず、記述を付け足したことろ、ちゃんと動作しました!

上記の解決方法を詳しく教えていただけませんか?
お願いします。
mamano
投稿日時: 2011/8/12 6:18
対応状況: −−−
一人前
登録日: 2011/6/28
居住地:
投稿: 83
Re: 商品規格の選択項目がカートに反映されない
468様 誠にありがとうございます。

<input type="hidden" name="product_class_id" value="<!--{$tpl_product_class_id}-->" id="product_class_id" />
こちらのタグは間違いなく存在しておりました。

hiddenの部分をtextに変えて、表示されたテキストボックス内の値が
規格1の選択を変更することで変化するか試しましたが、表示されている値は固定されたまま変化しませんでした。

同様のことをスマートフォンのテンプレートでも試しましたが
こちらはテキストボックス内の値は変化しました。

そこで、ご指摘の通りjavascriptに原因があると絞り込み、
色々試しながら調べたところ、テンプレートファイルにcategory.jsの指定が記述されておらず、記述を付け足したことろ、ちゃんと動作しました!

何故抜けていたのか、原因は分かりませんが
ずっと悩んでいたので、やっと次の課題に移れます・

468様、こんな無知な私に色々ご教授いただき、
誠にありがとうございました。
468
投稿日時: 2011/8/11 20:14
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: 商品規格の選択項目がカートに反映されない
こんばんわ。

PC用のテンプレートに問題がありそうだという事で、
/data/Smarty/templates/default/products/detail.tplに
以下のinputタグは存在していますでしょうか?

<input type="hidden" name="product_class_id" value="<!--{$tpl_product_class_id}-->" id="product_class_id" />

こちらのtype属性をtextに変更すると、
商品詳細ページにテキストボックスが表示されるようになります。
(デザインのカスタマイズなどによりますが、
 規格1プルダウンの近くに表示されます)

規格1、規格2を選択したタイミングで値がセットされると思いますが、
そちらは正しく変化しているでしょうか?
この値がPHPの$product_class_idに渡っているはずなのですが・・・。

値が変化しないようであれば、Javascriptのエラーが出ているかもしれません。
Javascriptのエラーが発生しているようであれば、
デフォルトのdetail.tplの先頭にあるscriptタグを削除してしまっている可能性があるかも知れません。

値が変化しているけど、PHPの$product_class_idは変化がないとすると、
今度は、LC_Page_Products_Detail.phpのどこで値が変化しているか調査する必要がありそうです。
mamano
投稿日時: 2011/8/11 8:44
対応状況: −−−
一人前
登録日: 2011/6/28
居住地:
投稿: 83
Re: 商品規格の選択項目がカートに反映されない
自分なりに色々と調べておりましたが頭がコンガラガッテきました。。。

LC_Page_Products_CategoryList.phpの
$product_class_id の値がカートに引き継がれない。

PCのみの現象
モバイル、スマートフォンではちゃんと引き継がれている。

ということは、LC_Page_Products_CategoryList.php
内の記述が問題ではなく、PC用のテンプレート
templates/default/products/default.tplの記述に問題あり?

こんな感じでしょうか・・・

しかし、スマートフォン用のdefault.tplと比較しましたが、記述の問題点が分からず。。。

何かヒントをいただければと切に願います。

よろしくお願いいたします。
mamano
投稿日時: 2011/8/10 21:04
対応状況: −−−
一人前
登録日: 2011/6/28
居住地:
投稿: 83
Re: 商品規格の選択項目がカートに反映されない
ご丁寧にありがとうございます。

引用:

PHPのほうですが、以下のファイルを確認していただけますか?
/data/class/pages/products/LC_Page_Products_Detail.php 153行目
$product_class_id = $this->objFormParam->getValue('product_class_id');

$product_class_id = $this->objFormParam->getValue('product_class_id');
print product_class_id;
exit;


上記、
print product_class_id;
の部分、
print $product_class_id;
で良いですか?

こちらで確認をいたしましたが、
規格1の選択を変更してもproduct_class_idの値は
変わりませんでした。

しかし、
商品詳細ページのテンプレートに、name属性に「product_class_id」がセットされたinputタグが2つ以上存在することはありませんでした。。。

一つ一つ確認しないと原因がつかめないこと、
誠におっしゃる通りだと思います。
分からないことだらけで質問ばかりにも関わらず、
ご丁寧なご対応に大変感謝申し上げます。

何卒、引き続きご教授願えれば幸いに存じます。
468
投稿日時: 2011/8/10 19:20
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: 商品規格の選択項目がカートに反映されない
ご確認ありがとうございます。

PHPのほうですが、以下のファイルを確認していただけますか?
/data/class/pages/products/LC_Page_Products_Detail.php 153行目
$product_class_id = $this->objFormParam->getValue('product_class_id');

$product_class_id = $this->objFormParam->getValue('product_class_id');
print product_class_id;
exit;

上記のように書き換えると、カゴに入れようとしている商品のコードを画面に表示して確認する事ができると思います。
規格1を変更して、商品をカゴに入れた時、$product_class_idの中身が変わるか確認していただけますか?

このデータが変わらないようであれば、
商品詳細ページのテンプレートに、name属性に「product_class_id」がセットされたinputタグが2つ以上存在していないでしょうか?

変わるようであれば、カゴに入れる処理ではなく、
カゴの中身を表示する(カゴの中のページ)処理に問題があるかもしれません。

こうゆう問題は1つ1つ確認しないと原因がつかめないので、
お手数をおかけしますが、よろしくお願いします。
mamano
投稿日時: 2011/8/10 11:28
対応状況: −−−
一人前
登録日: 2011/6/28
居住地:
投稿: 83
Re: 商品規格の選択項目がカートに反映されない
ご返信、ありがとうございます。

レス遅れて申し訳ありません。

case 'cart':

case 'cart':
print_r($this->arrForm);
exit;

上記の通り変更を加えてみました。

結果、
「[value] => 1」の部分、規格1の設定通り値は変わりました。

phpに問題があると判断できますでしょうか?
であればどこの部分か、ご教授願えますでしょうか。

大変申し訳ありませんが
何卒よろしくお願い申し上げます。
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は89,275名です
総投稿数は110,070件です

投稿数ランキング

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