バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 「NP後払い決済モジュール」で「商品名が設定されていません。」とエラーが出ます。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
kishi909
投稿日時: 2012/3/30 3:12
対応状況: −−−
新米
登録日: 2011/7/23
居住地: 新潟県
投稿: 10
「NP後払い決済モジュール」で「商品名が設定されていません。」とエラーが出ます。
[EC-CUBE] 2.11.5
[レンタルサーバ] ロリポップ(チカッパ優待プラン)
[OS] Windows7 Home Premium
[PHP] PHP Version 5.3
[データベース] MySQL 5.1.34

NP後払い決済モジュールをインストールして注文テストをしてみたところ下記のようなエラーが出ました。

------------------------------------------------------------

※エラーメッセージが、お客様で対処できない内容の場合は、各店舗にお問い合わせ下さい。

商品名が設定されていません。

------------------------------------------------------------

調べてみたのですが、

/data/downloads/module/mdl_np/class/LC_Page_Mdl_NP_Payment.php

で、処理がうまくいってないようです。

具体的には「送信用商品リストを作成する」 lfMakeItemList 関数?内でおかしな事になっていました。

下記商品データの整形はうまくいっているのですが、その後の「商品データ以外の商品情報」で配列に日本語(2バイト文字)が格納されないのです。

------------------------------------------------------------

// 商品データの整形
foreach ($arrDetail as $item) {

// 商品名
$item_name = $item["product_name"];
if( strlen($item["classcategory_name1"]) > 0 ) $item_name .= "/".$item["classcategory_name1"];
if( strlen($item["classcategory_name2"]) > 0 ) $item_name .= "/".$item["classcategory_name2"];

// 税込金額
$item_price = SC_Utils_Ex::sfCalcIncTax($item["price"], $this->arrInfo['tax'], $this->arrInfo['tax_rule']);

$arrItem[] = array( 'goods_name' => $item_name
,'goods_price' => $item_price
,'goods_count' => $item['quantity']
);
$item_name = "";
$item_price = 0;
}

// 商品データ以外の商品情報
if ( $arrOrder['deliv_fee'] > 0 ){
$arrItem[] = array( 'goods_name' => '送料'
,'goods_price' => $arrOrder['deliv_fee']
,'goods_count' => '1');
}

if ( $arrOrder['charge'] > 0 ){
$arrItem[] = array( 'goods_name' => '手数料'
,'goods_price' => $arrOrder['charge']
,'goods_count' => '1');
}

if ( $arrOrder['use_point'] > 0 ){
$arrItem[] = array( 'goods_name' => 'ポイント'
,'goods_price' => 0 - ( $arrOrder['use_point'] * POINT_VALUE )
,'goods_count' => '1');
}

------------------------------------------------------------

$arrItem["goods_name"]に「送料」「手数料」「ポイント」が下記(送料の部分のみ抜粋)のように格納されません。※送料は700円にしてあります。


array(3) {
["goods_name"]=>
string(0) ""
["goods_price"]=>
string(3) "700"
["goods_count"]=>
string(1) "1"
}


試しに下記のように日本語を英数字に変更してみました。

$arrItem[] = array( 'goods_name' => '送料'

↓↓↓↓ 変更 ↓↓↓↓ 

$arrItem[] = array( 'goods_name' => 'souryou'

すると、下記のとおり配列にきちんと値が格納されてエラーも出ずにNP後払いに自動登録できました。

array(3) {
["goods_name"]=>
string(7) "souryou"
["goods_price"]=>
string(3) "700"
["goods_count"]=>
string(1) "1"
}


あと日本語と英数字を混ぜてみました。

$arrItem[] = array( 'goods_name' => '送料'

↓↓↓↓ 変更 ↓↓↓↓ 

$arrItem[] = array( 'goods_name' => 'abc送料'

結果は下記のように日本語が消えてました。

array(3) {
["goods_name"]=>
string(3) "abc"
["goods_price"]=>
string(3) "700"
["goods_count"]=>
string(1) "1"
}


日本語(2バイト文字)がうまく配列に格納されずにエラーがでている状態です。

英数字でNP後払いに自動登録して手動で「souryou ⇒ 送料」などと直すよりは、始めから「送料」で自動登録したいのですが、どう記述したら良いのかが分かりません。。。

「この記述だとうまくいくのでは?」という方法があれば、教えていただきたいです。どうかよろしくお願い致します。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

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.