バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品をカートに入れた際のチェックについて教えてください

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
taron
投稿日時: 2013/2/2 10:00
対応状況: 確認中
半人前
登録日: 2013/2/2
居住地:
投稿: 13
商品をカートに入れた際のチェックについて教えてください
商品をカートに入れる際に、購入数、在庫数チェック
(data/class/SC_CartSession.php)
などがありますが、そこに新たにチェック項目を追加したいのですが、カートに入れる際のフォームのパラメータをこの場所に引っ張ってくる事ができません。
どなたか教えていただければと思います。


【LC_Page_Cart.php】
//フォームから取得
$yparams = $objFormParam->getValue('ydata01');
//チェック開始
$this->tpl_message = $objCartSess->checkProducts($key,$yparams);


【CartSession.php】
function checkProducts($productTypeId,$yparams ) {
$objProduct = new SC_Product_Ex();
$tpl_message = "";

// カート内の情報を取得
$items = $this->getCartList($productTypeId);
foreach (array_keys($items) as $key) {
$item =& $items[$key];
$product =& $item['productsClass'];
/*
* 表示/非表示商品のチェック
*/
      |
      |
/*----------------------------/

ここで $yparams を使用したいのですが、
     なぜか表示されません。。。

}


DELIGHT
投稿日時: 2013/2/2 10:40
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 商品をカートに入れた際のチェックについて教えてください
SC_FormParam_Exのset/getメソッドは、
それ以前に
SC_FormParam_Ex::addParam($disp_name, $keyname, $length, $convert, $arrCheck, $default, $input_db)
が必要となります。

LC_Page_Cart::lfInitParam($arrRequest)内に、
下記のようなコードを追加してみてはどうでしょうか。


$objFormParam->addParam('表示名', 'ydata01', STEXT_LEN, 'KVa', array('MAX_LENGTH_CHECK'));

ydata01がどのようなデータかによって引数が変わりますので、
詳しくはSC_FormParam.phpをご参照下さい。
(分かりづらいですが…)


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

taron
投稿日時: 2013/2/2 11:08
対応状況: −−−
半人前
登録日: 2013/2/2
居住地:
投稿: 13
Re: 商品をカートに入れた際のチェックについて教えてください
ありがとうございます。

こちら試させていただきましたが、やはり、チェックの中には値は来ていないみたいです。。。

ydata01は、文字列が入っています。

【LC_Page_Cart.phpのaction()内にて】
$yparams = $objFormParam->addParam('項目名', 'ydata01', STEXT_LEN, 'KVa', array('MAX_LENGTH_CHECK'));

$this->tpl_message = $objCartSess->checkProducts($key,$yparams);

この様にさせていただきました。


お手数をお掛けしますが、宜しくお願いします。
助けてください。。。

yuh
投稿日時: 2013/2/2 13:33
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 商品をカートに入れた際のチェックについて教えてください
ydata01で何をチェックするのかはわかりませんが、その記述だと最大文字数のみのチェックになるので、空でも通ります。
taron
投稿日時: 2013/2/2 13:55
対応状況: −−−
半人前
登録日: 2013/2/2
居住地:
投稿: 13
Re: 商品をカートに入れた際のチェックについて教えてください
ご指摘いただきありがとうございます。

私の説明の仕方が悪かったです。
すいません。

そもそも、
カートにある商品データと、その後新たにカートに入れた商品データのマージをしたかったのです。

それで、在庫数などのエラー処理がある場所でマージ処理(同一の値にしたい為)を実施しようとしましたが、商品データが届かず苦戦してしまっている状態でございます。

説明不測で申し訳ないです。

お知恵をいただけると本当にありがたいです。
宜しくお願いします。
yuh
投稿日時: 2013/2/2 15:14
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 商品をカートに入れた際のチェックについて教えてください
カートに入れる際のパラメータはLC_Page_Products_Detail.phpの方で、そこでカートに入れた後にcartへリダイレクトしています。
まだ何をしたいかのイメージがつかめませんが、おそらくLC_Page_Products_Detail.phpでカートに入れる処理部分(function doCart())に現在のカートの中身をチェックする部分を追加した方がスマートに処理が進むと思います。
DELIGHT
投稿日時: 2013/2/2 15:16
対応状況: −−−
仙人
登録日: 2010/2/3
居住地: 熊本県・九州・長野県・関東甲信越
投稿: 572
Re: 商品をカートに入れた際のチェックについて教えてください
SC_FormParam_Ex::addParam()は戻り値のある関数ではありません。
あくまでパラメータの容れ物を登録するだけの処理です。


$arrParams = array(
'hoge' => 'fuga',
'foo' => 'bar'
);
$objFormParam = new SC_FormParam_Ex();
$objFormParam->addParam('ほげ', 'hoge');
$objFormParam->setParam($arrParams);

echo $objFormParam->getValue('hoge');
// 'fuga'

echo $objFormParam->getValue('foo');
// ''



$objFormParam->addParam('ふー', 'foo');
$objFormParam->setParam($arrParams);

echo $objFormParam->getValue('hoge');
// 'fuga'

echo $objFormParam->getValue('foo');
// 'bar'


----------------
+ DAISY inc. -------------------- +
EC-CUBE構築・カスタマイズサービス
EC・WEB構築などお気軽にご相談ください。

デイジー株式会社
http://daisy.link/

taron
投稿日時: 2013/2/4 19:36
対応状況: 解決済
半人前
登録日: 2013/2/2
居住地:
投稿: 13
Re: 商品をカートに入れた際のチェックについて教えてください
ありがとうございました!

なんとか解決しましたm(_ _)m
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,859名です
総投稿数は109,996件です

投稿数ランキング

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