バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > F-REGI決済モジュールのエラー文言文字化け

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
Klif
投稿日時: 2009/5/12 0:48
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
同じファイルで中身をマージしました!
ご指摘お待ちしております。
ramrun
投稿日時: 2009/5/12 0:41
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: F-REGI決済モジュールのエラー文言文字化け
ごめんさない。
test.phpの中身を下記でお願いします(汗)。
<?php
require_once('../require.php');
phpinfo();
?>

Klif
投稿日時: 2009/5/12 0:36
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
Seasoft様

お忙しいのにありがとうございます!
やはり私だけの報告では、こちら側の設置上のミスなども原因になる可能性もありますよね。その所為でTracして頂いた場合、Seasoft様に恥をかかせてしまう事になりかねないので、同様の報告が他に1件でも増えた際には、正式に障害扱いにする方向で進めたいと思います。

重ね重ねありがとうございます!
Klif
投稿日時: 2009/5/12 0:33
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
ramrun様


恐れ入ります。
ご好意に甘えて申し訳ございません。
以下をチェックいただけると幸いです。

http://d227685.win-sv.com/ginza-west.co.jp/store/html/shopping/test.php
ramrun
投稿日時: 2009/5/12 0:21
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: F-REGI決済モジュールのエラー文言文字化け
いまちょうどコードを眺めていたところですが、
html/shoppingにtest.phpを作って、phpinfo()を記述してください。
<?php
phpinfo();
?>

ブラウザから http://yourdomain/shopping/test.php にアクセスして、phpinfoのServer APIとmbstringの状態をお願いします。
それで多分わかるかも。
seasoft
投稿日時: 2009/5/12 0:17
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: F-REGI決済モジュールのエラー文言文字化け
私も、ざっとソースを査読した感じだと、ramrun様ご指摘の箇所の処理が意図したとおりに働いていないのかなと思っています。

EUC の電文だと [LF] が多いのですが、[CR][LF] に変更されたのかもしれませんね。

いずれにしても、サポート先などに正式な仕様を確認した方が良い気がします。場合によっては、現状の電文が誤りで、後日再変更が入り元に戻るケースも想定されますし。

オールマイティーに全ての改行コードに対応できるようにするのが一番幸せな方法かもという感じもします。


> F-REGIモジュールの修正+再配布という流れになると有り難いなと思います。
> 以前に、「チケット登録」というのをご好意でやって頂きましたが
> あのような形でモジュールの再開発配布を依頼する事は出来るのでしょうか?

私も、この類の不具合は再配布されて欲しいなと思いますね。

ただ、ダウンロードモジュールに関しては、Trac の範疇なのか若干不明確な線ではあるんですよね・・・^^;
基本的に Trac に登録するのは、当方で症状を確認したものを登録しています。若しくは、複数の障害報告が上がっているか。しかし、再現方法・原因・対処方法など、ある程度特定できれば、登録してみて良いですよ。

もしも、他にもこの問題が発生している方がいらっしゃいましたら、報告いただけると尚良いですね。


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

Klif
投稿日時: 2009/5/11 23:55
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
ramrun様

以前には解決のお手伝いをして頂きありがとうございました。
今回もアドバイスいただきありがとうございます。

------------------------
$response = split("\n", $response);
『改行で区切って配列化しているみたい』
------------------------

赤字でご指摘いただいた箇所でトライできることはやってみたいと思いますが
やはりF-REGI側に何か変更があったのでしょうか。

明日の営業時間内にに連絡し、確認してみたいと思います。
ありがとうございます。

Klif
投稿日時: 2009/5/11 23:49
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
seasoft様

報告が遅くなり申し訳ございません。

アドバイスに従い
explodeを試したのですが上手く分割できず、
ブラウザ上の区切り文字は半角スペースなのですが
ソースを見ると改行で配列は区切られておりました。
\nでexplodeしてもダメでした。
isleのinfinitoというWindowsサーバーなので改行コードが\rかとも思い、
\rでexplodeしてもダメでした。

mb_convert_kanaで半角スペースを全角スペースに変換してみましたが
半角のまま表示されていますので、おそらく半角スペースに見えるだけかもしれません。

そこで以下のように、substrで処理して見ると
DBのdtb_order_tempにはデータが格納されました。

さらにエラー文言をmb_convert_encodingして文字化けは解消できました。

コンビニ決済はこれで問題ないと思いますが
カード決済を試したところ

「カード情報を登録保存する」というF-REGIのオプション機能を申込んでおり
その機能が使えなくなってしまいました。
ここまでくるともう一息!と思いましたが、

本当にここまでの大幅な変更作業が必要なのかな!?
という疑問が出てまいりました。

F-REGIモジュールの修正+再配布という流れになると有り難いなと思います。
以前に、「チケット登録」というのをご好意でやって頂きましたが
あのような形でモジュールの再開発配布を依頼する事は出来るのでしょうか?

今回のケースの正しい対処法を含めご教授いただけると幸いです。

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

$xxx=substr($response[0],0,2);
$yyy=substr($response[0],4);
list($hachi,$nana)=explode("0000000000000",$yyy);
list($sebun,$irebun)=explode("http://payment.sej.co.jp/od/hi.asp?",$nana);

// 成功
if ($xxx == "OK") {
//変数格納しなおし
$arrVal['memo01'] = "mdl_fregi"; // モジュールコード
$arrVal['memo02'] = $this->setConveniPayment($response, $arrInput); // 支払情報
$arrVal['memo03'] = "2"; // 支払方法
$arrVal['memo07'] = "0000000000000".$sebun; // 取引番号
$arrVal['memo08'] = $hachi; // 支払番号
$arrVal['memo09'] = "0"; // F-REGIステータス
    return true;
// 失敗
} elseif ($xxx == "NG") {
$this->message = mb_convert_encoding($yyy,"UTF-8","EUC-JP");
GC_Utils::gfPrintLog("F-REGI(Conveni):". $this->message, FREGI_LOG_PATH);
return false;
// 接続エラー
} else {
$this->message = $response;
GC_Utils::gfPrintLog("F-REGI(Conveni):". $this->message, FREGI_LOG_PATH);
return false;
}
-------------------------

ramrun
投稿日時: 2009/5/11 21:13
対応状況: −−−
仙人
登録日: 2006/11/3
居住地:
投稿: 789
Re: F-REGI決済モジュールのエラー文言文字化け
ちょろっと見てみたんですが、sendPost()から戻りが$responseに格納されるみたいですね。

/**
 * ポスト要求処理
 *
 * @return void
 */
function sendPost($url, $arrPost) {
    $req = new HTTP_Request($url);
    $req->setMethod(HTTP_REQUEST_METHOD_POST);

    // 電文の送付
    $req->addPostDataArray($arrPost);
    // 応答内容の取得
    $response = $req->sendRequest();

    $err_flg = false;
    if (!PEAR::isError($response)) {
        $response = $req->getResponseBody();
    } else {
        $mess = mb_convert_encoding($e->getMessage(), CHAR_CODE, "SJIS");
        $err_flg = true;
    }
    $req->clearPostData();

    if (!$err_flg) {
        $response = mb_convert_encoding($response, CHAR_CODE, "auto");
        $response = split("\n", $response);
        return $response;
    } else {
        return $mess;
    }
}

これによると改行で区切って配列化しているみたいです。
その前のmb_convert_encoding()も効いていないっぽい。

ただこの処理は各種支払いで共通なので、しばらくOKだった時期があったのでしたらF-REGI側で変更があったのかも。
Klif
投稿日時: 2009/5/11 1:20
対応状況: −−−
半人前
登録日: 2009/4/23
居住地: 神奈川県
投稿: 22
Re: F-REGI決済モジュールのエラー文言文字化け
ありがとうございます。
やってみます。
遅くまでおつき合いいただき感謝しています。
結果をまた報告します。
本当にありがとうございます。
« 1 (2) 3 4 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,972名です
総投稿数は110,019件です

投稿数ランキング

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.