バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
aozora
投稿日時: 2014/6/9 17:14
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
いつもお世話になっています。どうかご教授・アドバイス等頂けませんでしょうか。

オーナーズストア・モジュール管理・一覧へから ペイパル ウェブペイメント プラス 決済モジュール(2.11系・2.12系・2.13系)をダウンロードして使用した際に、

商品詳細ページの「カゴに入れる」から進んでいくと「デビットカードまたはクレジットカードで支払う-PayPal」という名称で、urlは以下のページに辿り着きます。

https://www.paypal.com/jp/cgi-bin/webscr?cmd=_flow&SESSION=xxxxx

そのページの画面左側にはメールアドレス、そしてお客様の注文明細とあり、右側は支払い方法を選択するとなっております。

画面左側のメールアドレス、そしてお客様の注文明細の説明(商品名)はそれぞれdtb_paymentのmemo01、とmemo02を直接抽出しているだけだと思いますが、

その抽出に関する記述文を変更することは可能でしょうか。(可能にするにはどうしたら宜しいでしょうか。 ダウンロードファイルであるmdl_paypalの中には関連ファイルは無いようです。)

[EC-CUBE]2.12.5
[データベース] MySQL
[WEBサーバ] Apache
[OS] XP 
[PHP] PHP 5.2.17
nanasess
投稿日時: 2014/6/9 17:27
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
引用:

その抽出に関する記述文を変更することは可能でしょうか。


どのように表示されているものを、どのように変更したいのでしょうか?
aozora
投稿日時: 2014/6/10 1:26
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
nanasess様
お世話になります。どうかご教授の程お願い申し上げます。

ややこしくて申し訳ございませんが、実現したいことは複数の人が商品を販売できる(複数の人が商品を登録でき、また複数の人が各々のペイパル ウェブペイメント プラス決済モジュールをダウンロードできる)とした上で、

このページ「デビットカードまたはクレジットカードで支払う-PayPal」で、お客様が購入しようとしている商品を登録した人のcreator_idと同じcreator_idを持つ決済モジュール情報(payment_id、module_path、memo01、memo02)をdtb_paymentから抽出し表示するという記述を作成したいと考えたのですが、どこに記述したらよいか思案しておりました。
nanasess
投稿日時: 2014/6/10 9:06
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
引用:

aozoraさんは書きました:

ややこしくて申し訳ございませんが、実現したいことは複数の人が商品を販売できる(複数の人が商品を登録でき、また複数の人が各々のペイパル ウェブペイメント プラス決済モジュールをダウンロードできる)とした上で、

このページ「デビットカードまたはクレジットカードで支払う-PayPal」で、お客様が購入しようとしている商品を登録した人のcreator_idと同じcreator_idを持つ決済モジュール情報(payment_id、module_path、memo01、memo02)をdtb_paymentから抽出し表示するという記述を作成したいと考えたのですが、どこに記述したらよいか思案しておりました。


相当カスタマイズが必要そうですが、 data/class/pages/shopping/LC_Page_Shopping_LoadPaymentModule.php あたりで抽出条件を記述すればできそうな感じですね。
このファイルで、 dtb_payment.module_path を呼び出しています。
aozora
投稿日時: 2014/6/11 11:43
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
nanasess様
お忙しいなかご教授いただきまして感謝いたします。

ページ「デビットカードまたはクレジットカードで支払う-PayPal」で表示される販売者のメールアドレス(dtb_payment.memo01)、および商品名(dtb_payment.memo02)を抽出しているファイルがどこかにあり、そのファイルで私が実現したいと考えている抽出文を記述すべきであると考えておりました。

(なぜならここで表示される決済情報がそのまま販売者のメールアドレス(dtb_payment.memo01)に送信されるものと考えておりましたので。)

このファイルはPayPal側のサーバーに存在するものなのでしょうか。(eccube側では見つかりません。)

あるいはnanasess様のアドバイスの様にdata/class/pages/shopping/LC_Page_Shopping_LoadPaymentModule.phpに記述すべきなのでしょうか。(現在取り組んでおります。)
aozora
投稿日時: 2014/7/16 4:36
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
nanasess様

いろいろと試しておりました。ご教授頂きましたように、以下の記述を付加致しましたが、エラーはでないもののpaypalのページで抽出される情報はdtb_paymentに複数あるモジュール情報の中の最後列のもの(payment_idが最大のもの)のmemo01、およびmemo02です。

data/class/pages/shopping/LC_Page_Shopping_LoadPaymentModule.php

function getModulePath($order_id) {
$objQuery =& SC_Query_Ex::getSingletonInstance();
$sql = <<< __EOS__
SELECT module_path
FROM dtb_payment T1
JOIN dtb_order T2 ON T1.payment_id = T2.payment_id
JOIN dtb_products T3 ON T1.creator_id = T3.creator_id
WHERE order_id = ? and T1.creator_id = T3.creator_id
__EOS__;
$module_path = $objQuery->getOne($sql, array($order_id));
if (file_exists($module_path)) {
return $module_path;
}
return false;
}

上記の記述自体に問題があるのでしょうか? あるいは他のファイルでdtb_paymentからmemo01、およびmemo02を含めた関連情報を抽出していると思われる下記の3箇所で上記と同様の記述を付加致しましたが、エラーはでないものの同じ結果になります。

SC_Helper_Payment.php:function get($payment_id)
SC_Helper_Payment.php:function getList()
SC_Helper_Purchase.php : function getPaymentsByPaymentsId($payment_id)

何かヒント等がありませんでしょうか。
nanasess
投稿日時: 2014/7/16 9:26
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
これだと、 dtb_order.payment_id が既に「最後列のもの(payment_idが最大のもの)」となっていませんか?

支払方法選択画面の支払方法 と payment_id が 1:N という構成でしたら、支払方法選択画面での工夫が必要かと思います。
aozora
投稿日時: 2014/7/21 18:56
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
nanasess様

貴重な情報を頂きまして感謝いたします。以下長くて申し訳ございませんが方向性等につきアドバイスを頂けませんでしょうか。

支払い選択画面とは以下のページですが、
/shopping/payment.php?transactionid=

このページに以下の行があり、SC_Helper_Purchase.php
のgetPaymentsByPriceを呼び出しております。

/**
* 配送業者IDから, 支払い方法, お届け時間の配列を取得する.
function getSelectedDeliv(&$objPurchase, &$objCartSess, $deliv_id) {
・・・・
$arrResults['arrPayment'] = $objPurchase->getPaymentsByPrice($total, $deliv_id);
・・・・ }

そこで、以下の様にgetPaymentsByPriceを変更しました。

SC_Helper_Purchase.php
* 購入金額に応じた支払方法を取得する.
function getPaymentsByPrice($total, $deliv_id) {

// 削除されていない支払方法を取得
$table = 'dtb_payment as py LEFT JOIN dtb_products as pr ON pr.creator_id = py.creator_id';
$where = 'py.del_flg = 0 AND pr.creator_id = py.creator_id AND py.payment_id IN (' . SC_Utils_Ex::repeatStrWithSeparator('?', count($arrPaymentIds)) . ')';
$payments = $objQuery->select('py.payment_id, py.payment_method, py.rule_max, py.upper_rule, py.note, py.payment_image, py.charge', $table, $where, $arrPaymentIds);
$arrPayment = array();

まず?現時点での目的(上記述の意図)は、「お支払い方法・お届け時間の指定」ページの「お支払い方法の指定」箇所で、その時点で購入者が購入しようとしている商品のcreator_idと同じcreator_idを持つpayment_idの決済モジュール(PayPal)名を1つだけ表示させるということです。

そこから多分dtb_orderに格納された決済情報がLoadPaymentModule.phpを使って最終的に?当初の目的であったPayPalの「お客様注文明細」で抽出されるのだと考えております。

結果ですが、
?dtb_productsに同じcreator_idが複数存在する場合その数だけ表示する。(決済モジュールのcreator_id=26でdtb_productsにcreator_id=26の商品が8個存在する場合、)「お支払い方法の指定」箇所で8個の決済モジュール名を抽出します。

?dtb_paymentの複数存在するモジュールの中からpayment_idが最上段のもののmemo01、memo02を抽出してしまいます。(dtb_orderには「お支払い方法の指定」箇所で選択した正確なpayment_idが格納されています。)

上述の記述、そして全体の方向性で、駄目であると思われる点は何になりますでしょうか。(data/logにはエラーはでません。)どうかアドバイス等を頂けませんでしょうか。
nanasess
投稿日時: 2014/7/23 10:33
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2313
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
そもそものお話で恐縮ですが、 PayPal モジュール側でのカスタマイズはされていますか?
PayPal決済画面に表示される、商品名などは、標準では dtb_module から抽出しています。
こちらの認識はあっていますでしょうか?
aozora
投稿日時: 2014/8/7 19:01
対応状況: −−−
常連
登録日: 2013/3/21
居住地:
投稿: 40
Re: ペイパル ウェブペイメント プラス 決済モジュールの支払いページに関する記述について
nanasess様

わかりがたい質問に対して、アドバイス・ご教授いただきまして感謝いたします。

現在あれこれと迷いながらいろいろと試しておりますが、

paypalモジュール側でのカスタマイズとは具体的にどのようなものになるのでしょうか。
“PayPal決済画面に表示される、商品名などは、標準では dtb_module から抽出しています。” とは(最初のページの設定から情報を渡してくるのではなく、直接dtb_moduleから抽出するという意味でしょうか。)

また私の前回の投稿でのやり方自体で問題となる箇所はどこになると考えられますでしょうか。

大変恐縮ですが、アドバイス等頂ければ幸いです。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

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