質問 > フロント機能 > イプシロン決済について |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ゲスト |
投稿日時: 2007/12/17 13:35
対応状況: −−−
|
イプシロン決済について こんにちは!!
今イプシロンの決済モジュールを利用しているのですが、 商品名の長いものをカードやコンビニで購入しようとすると 「商品名の指定が異常です」というエラーが出て購入が出来ません。 イプシロン側のエラー詳細を確認したところ、 パラメータ「item_name」(商品名)を64byte以下に指定して下さい。 とのことなのですが、 類似商品が多数存在し、それらを区別するために商品名がどうしても長くなってしまいます。 イプシロン側に渡すデータだけ制限をかけることは出来ないのでしょうか。 商品名が長い場合は、途中64byteまでの部分をイプシロン側に渡すとかが出来るとベストだと思うのですが・・・。 どのようにしたら実現できるのかが分かりません。 アドバイス宜しくお願いします!! ちなみにバージョンは1.3.4です。 |
|
ゲスト |
投稿日時: 2007/12/17 14:34
対応状況: −−−
|
Re: イプシロン決済について 自己レスです。
無事解決しました! downloads/module/mdl_epsilonのcard.phpとconvenience.phpの 送信データ生成の部分を下記のように変更しました。 変更前(card.php→96行目付近、convenience.php→93行目付近) // 送信データ生成 $item_name = $arrMainProduct["name"] . "×" . $arrMainProduct["quantity"] . "個 (代表)"; 変更後 // 送信データ生成 $item_name = substr($arrMainProduct["name"], 0, 50) . "×" . $arrMainProduct["quantity"] . "個 (代表)"; 注文個数も表示させたかったため上記のようにしてますが、個数を重要視しないのであれば下記のようにしてもよさそうです。 変更後 // 送信データ生成 $item_name = $arrMainProduct["name"] . "×" . $arrMainProduct["quantity"] . "個 (代表)"; $item_name = substr($item_name, 0, 64); あまりPHPの知識に明るくない為、関数をネットで検索しながら書き換えたので、方法的に正しいかは分かりませんが、これで一応イプシロン上では商品名が長くてもきちんと処理してもらえました。 もちろんEC-CUBE上でもきちんと受注として処理されます。 方法的によくない等の意見がありましたら是非宜しくお願い致します。 |
|
Gaz |
投稿日時: 2007/12/17 16:09
対応状況: −−−
|
半人前 登録日: 2006/10/25 居住地: 東京 投稿: 29 |
Re: イプシロン決済について substrだけですと漢字等の2バイト文字が途中で切られてしまい、文字化けの元となることがあります。
mb_substrやmb_strcut等の2バイト文字で動作する関数を使用して組まれたほうがより安全です。 製品名を入れるのにこだわりが無いのであれば「商品」とかだけを出力するのも手です。 |
ゲスト |
投稿日時: 2007/12/18 18:59
対応状況: −−−
|
Re: イプシロン決済について 有難う御座います!!
是非そちらに変更させて頂きます!! |
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |