[解決済み] Paypalのnotify_urlとreturn_urlです。PHPを使用してIPNなしで変数を受信する
質問
Paypalへの簡単な支払いオプションを設定しようとしていますが、returnとnotifyのURLでトラブルや混乱が発生しています。私はphpの初心者で、以前はaspでこれを達成したのですが、今になって分からなくなってしまいました。
私の基本的なPayPalフォームです。
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="PayPalForm" name="PayPalForm" target="_top">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="[email protected]">
<input type="hidden" name="amount" value="0.01">
<input type="hidden" name="item_name" value="Composite Door">
<input type="hidden" name="item_number" value="<?php echo $orderID ?>">
<input type="hidden" name="currency_code" value="GBP">
<input type="hidden" name="cancel_return" value="http://www.mydomain.co.uk/paypal-notcompleted.php">
<input type="hidden" name="return" value="http://www.mydomain.co.uk/paypal-completed.php">
<input type="hidden" name="notify_url" value="http://www.mydomain.co.uk/paypal-completed.php">
</form>
<script>
document.PayPalForm.submit();
</script>
ご覧の通り、フォームはpaypalに投稿され、その結果に応じて戻り、失敗またはキャンセルされた場合はpaypal-notcompleted.phpに移動します。
成功した場合、paypal-completed.phpに移動します。私はIPNをセットアップしていません。私がしたいのは、paypalが私に戻ってポストする変数のいくつかを取得し、単純な挿入クエリを実行し、顧客に確認メッセージのいくつかの詳細を表示することです。
notify_urlとreturn_urlを同じページにしていいのでしょうか?
なぜpaypalは期待される完全なものを掲示しないのか(ここに見られるように。 Paypalの通知先URL ) ページに戻りますか?
XMLとか関係あるのはわかるのですが、paypalが送り返した変数を$_GETすればいいと思っただけなのです。誰かがこの方法でそれをしたことがありますか、彼らは私が間違っている場所を教えてもらえますか?
解決方法は?
詳細情報を戻り先URLに戻すには、以下のようにします。 PDT . とよく似ています。 IPN ただし、これは戻り先URLで使用するためのものであり、一方 アイピーエヌ は、サードパーティの IPN リスナースクリプトをサーバーに設置します。
PDT は、単に返送先 URL のページでユーザーに決済を表示する分には問題ありませんが、決済後の処理を PDT (例: データベース更新、領収書メールの送信など) PayPalアカウントでAuto-Returnを有効にしていても、ユーザーがこのページに戻ってくる保証はないからです。
IPN は、決済完了後にユーザーがあなたのサイトに戻ったかどうかに関係なく、トランザクションが発生するたびにトリガーされます。
通知URLはIPNにのみ使用され、PayPalプロファイルでIPN用に設定した内容を上書きします。 PDTは、戻りURLに返されるデータを取得するために、PayPalアカウントプロファイルで構成される必要があります。
そうしないと、ユーザーがサイトに戻ったときと、PayPal IPNのPOSTから戻ってきたときに、同じコードが2回実行されることになります。
関連
-
[解決済み】Fatal error: 未定義の関数 sqlsrv_connect() を呼び出した。
-
[解決済み】PHPで空の値からデフォルトオブジェクトを作成する?
-
[解決済み】新しいPHPMailerはPHPMailerAutoload.phpが必要?
-
[解決済み】Phpのincludeが機能しない? 関数がincludeされない
-
[解決済み】ディレクトリ内のファイル数を数える PHP
-
[解決済み] PHPの配列を別の配列にコピーする関数はありますか?
-
[解決済み] PHP 未定義関数への呼び出し
-
[解決済み] PHPでHTML/XMLをパースして処理する方法とは?
-
[解決済み] PHPのstartWith()関数とendsWith()関数
-
[解決済み] "お知らせ 未定義変数"、"Notice: Notice: 未定義のインデックス", "Notice:未定義のインデックス", "Notice."。PHPを使用した「未定義のオフセット
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】PHP - 構文エラー、予期しないT_CONSTANT_ECAPSED_STRING [閉店].
-
[解決済み] 整形されていない数値が発生しました。
-
[解決済み】PHPで空の値からデフォルトオブジェクトを作成する?
-
[解決済み】PHP定数「PHP_EOL」はいつ使うの?
-
[解決済み】Phpのincludeが機能しない? 関数がincludeされない
-
[解決済み】ディレクトリ内のファイル数を数える PHP
-
[解決済み】Chrome net::ERR_INCOMPLETE_CHUNKED_ENCODING エラーが発生しました。
-
[解決済み】PHPからPythonスクリプトを実行する
-
[解決済み] Forbidden :このサーバーの /phpmyadmin にアクセスする権限がありません。
-
[解決済み] オートロードとは何ですか; spl_autoload、__autoload、spl_autoload_register はどのように使うのですか?