質問 > フロント機能 > paypal決済導入に関して |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
masa153 |
投稿日時: 2009/6/14 4:38
対応状況: −−−
|
新米 登録日: 2009/6/14 居住地: 投稿: 1 |
Re: paypal決済導入に関して Ver.2.4で、私も同じことで悩んでします。
とりあえず、「lc=JP」の指定があり、 https://www.paypal.com/j1/cgi-bin/webscr に飛ぶとNGな点までは切り分けました。 https://www.paypal.com/hk/cgi-bin/webscr とかなら住所は引き継げます。 香港には、都道府県は無いので当然ダメですが・・・ そもそも、都道府県の送信は、Paypal側が「北海道 -Hokkaido」みたいになっているので、スペース以降のローマ字表記を付加してやらないと難しいと思います。 |
tonton |
投稿日時: 2009/6/14 12:55
対応状況: −−−
|
仙人 登録日: 2008/8/14 居住地: 投稿: 437 |
Re: paypal決済導入に関して こんにちは。
私もこちらのようなPAYPALの導入を試みていて、toyoatuさんと同様、住所情報の取得でエラーが出てしまって、今、ソースをイジイジしているのですが、 私の環境は、ポスグレの8.3で、どうも、8.3になって、データ型の自動変換ができなくなってしまったのが、原因で、mtb_zipのcityカラムのデータをテキスト型として読み込めないのがエラーの原因のようです。 エラーメッセージは、購入プロセスでPAYPALを選択して、決済画面を進めていくと、PAYPALへのデータ受け渡しで、 ---------------- SELECT city FROM mtb_zip WHERE zipcode=5420081 DB Error: unknown error SELECT city FROM mtb_zip WHERE zipcode=5420081[nativecode=ERROR: operator does not exist: text = integer at character 39 HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.] ---------------- このようなエラーが出ています。 ちなみに、zipcode:5420081は大阪市中央区です。 こちらに、キャストについて詳しく書かれているのですが、、、↓↓↓ http://lets.postgresql.jp/documents/tutorial/cast/ 理屈はわかったものの、これって、どこにどうすれば、型変換できるのでしょうか;;;というところでつまづきまくっています。 toyoatuさんは、MYSQLということなので、もしかしたら原因およびエラー内容は違うかもしれませんが、参考になれば・・・&どなたかお助けいただければ、、、と書き込みしました。 よろしくお願いします。 |
tonton |
投稿日時: 2009/6/14 13:05
対応状況: −−−
|
仙人 登録日: 2008/8/14 居住地: 投稿: 437 |
Re: paypal決済導入に関して あの、一応、追記ですが、toyoatuさんの質問にもありました参考サイトでもありました、(http://www.wiz.gr.jp/wordpress/82)
郵便番号から、住所情報を取得しているソースは、下記のところだと思うのですが、 $city = $objQuery->get("mtb_zip", "city", "zipcode=" . $arrData["deliv_zip01"] . $arrData["deliv_zip02"]) ; もしかしたら、このコードに、型変換を追加してやるだけでいいのかもしれません。(やり方わからないので調べているのですが・・・) |
seasoft |
投稿日時: 2009/6/14 14:58
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: paypal決済導入に関して こんなのは?
|
tonton |
投稿日時: 2009/6/14 15:42
対応状況: −−−
|
仙人 登録日: 2008/8/14 居住地: 投稿: 437 |
Re: paypal決済導入に関して seasoft様
>こんなのは? >$city = $objQuery->get('mtb_zip', 'city', 'zipcode = ?', $arrData['deliv_zip01'] . $arrData['deliv_zip02']); 早速試してみました。 そして、あっさり動作できました; スゴッ! つい今しがた、PAYPALのサンドボックス(テストアカウントで動作確認ができるテストサイト)につなげて、試してみました。 動作、ちゃんとできました! 受注者アカウントにも発注者アカウントにも、ちゃんと計上されています。 サンドボックスでちゃんと動作できているので、PAYPALの場合、通常の利用でも多分問題ないと思います。 今回も、とても助かりました!本当に、ありがとうございました。 今回の動作は、私はポスグレ8.3.3/EC-CUBE2.4で試しました。 PAYPALは、こちらのサイト http://blog.katsuma.tv/develop/paypal/ で述べられているように、PDT、IPNの2つのコールバック方式を加味しつつ、EC-CUBEなどのシステムのバックエンドと統合しなければならないようで、もう少し、複雑な要件も出てきそうです。 ですが、とりあえずは、受注して決済を受けるところまで一通りできたことになるので、いちばん根元の解決が得られました。 あとは、続けて、都道府県情報の読み出しやIPNについても調べていこうと思いますので、私も何か自分で得られた情報が出てきたら、書き込みに来ますね。 SEASOFTさん、本当にありがとうございます。 |
nagasawa |
投稿日時: 2009/12/11 11:00
対応状況: −−−
|
新米 登録日: 2009/12/10 居住地: 投稿: 2 |
Re: paypal決済導入に関して はじめまして。こちらのツリーや、EC-CUBEの公式ガイドブックを参考にカスタマイズしてPayPalを導入しようと、試みているのですが、住所が渡せなくて困っております。
こちらの環境 EC-CUBEバージョン 2.4.1 PHPバージョン PHP 5.1.6 DBバージョン PostgreSQL 8.1.18 まず、LC_Page_Shopping_Confirm.php の148行目以降のソースは下記の通りです。 // 決済方法により画面切替 if($payment_type != "") { $_SESSION["payment_id"] = $arrData['payment_id']; $this->sendRedirect($this->getLocation(URL_SHOP_MODULE)); }else{ if($arrData['payment_id'] == 5) { $paypalURL = "https://www.paypal.com/j1/cgi-bin/webscr?cmd=_xclick&" ; $paypalURL .= "business=" . "info@hogeshop.com" . "&" ; $paypalURL .= "lc=JP&item_name=" . "商品名" . "&" ; $paypalURL .= "invoice=" . $order_id . "&" ; $paypalURL .= "currency_code=JPY&no_shipping=1&no_note=1&" ; $paypalURL .= "shipping=" . $arrData['deliv_fee'] . "&" ; $paypalURL .= "amount=" . ($arrData['payment_total']-$arrData['deliv_fee']) . "&" ; $paypalURL .= "email=" . $arrData["order_email"] . "&" ; $paypalURL .= "first_name=" . urlencode(mb_convert_encoding($arrData["deliv_name02"], "UTF-8",CHAR_CODE)) . "&" ; $paypalURL .= "last_name=" . urlencode(mb_convert_encoding($arrData["deliv_name01"], "UTF-8", CHAR_CODE)) . "&" ; $city = $objQuery->get('mtb_zip', 'city', 'zipcode = ', $arrData['deliv_zip01'] . $arrData['deliv_zip02']); $paypalURL .= "address1=" . urlencode(mb_convert_encoding(str_replace($city, "", $arrData["deliv_addr01"]), "UTF-8", CHAR_CODE)) . "&" ; $paypalURL .= "address2=" . urlencode(mb_convert_encoding($arrData["deliv_addr02"], "UTF-8", CHAR_CODE)) . "&" ; $paypalURL .= "city=" . urlencode(mb_convert_encoding($city, "UTF-8", CHAR_CODE)) . "&" ; $paypalURL .= "zip=" . $arrData["deliv_zip01"] . "-" . $arrData["deliv_zip02"] . "&" ; $paypalURL .= "night_phone_b=(" . $arrData["order_tel01"] . ")" . $arrData["order_tel02"] . "-" . $arrData["order_tel03"] ; // echo $paypalURL; header("Location: " . $paypalURL); } else { $this->sendRedirect($this->getLocation(URL_SHOP_COMPLETE)); } } 注文時にPayPalへ送信されるURLは下記の通りです(改行を入れております) https://www.paypal.com/j1/cgi-bin/webscr?cmd=_xclick& business=info@hogeshop.com& lc=JP& item_name=商品名& invoice=45& currency_code=JPY& no_shipping=1& no_note=1& shipping=1000& amount=10500& email=kyaku@hogehoge.com& first_name=%E3%81%8A%E3%82%84%E3%81%98& last_name=%E3%81%AA%E3%81%94%E3%82%84%E3%81%AE& address1=%E8%B1%8A%E5%B9%B4%E7%94%BA& address2=3-1& city=%E5%90%8D%E5%8F%A4%E5%B1%8B%E5%B8%82%E5%8D%83%E7%A8%AE%E5%8C%BA& zip=464-0076& night_phone_b=(04)1234-4567 そして、PayPalで表示されるのが、下記URLの通り、住所が入ってない状態になっております。 http://imagepot.net/view/126049653935.jpg 商品名、価格、名前が入ってますので、エンコードの問題ではなさそうです。 何かしら、お気づきの点があればコメントいただけますでしょうか? ヒントだけでも戴けると助かりますので、 どうぞよろしくお願いします。 |
seasoft |
投稿日時: 2009/12/11 12:45
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: paypal決済導入に関して URL を PayPal に確認してもらっては?
|
nagasawa |
投稿日時: 2009/12/12 0:50
対応状況: −−−
|
新米 登録日: 2009/12/10 居住地: 投稿: 2 |
Re: paypal決済導入に関して さっそくのお返事ありがとうございます。
そうですね。PayPalに確認してみます。 今回はありがとうございました。 |
« 1 (2) |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |