2011-12-06 14 views
2

私はpaypalを次のように統合したいと思いますが、私は気づいていない欠陥があるかもしれません。paypalとウェブペイメントスタンダードとの統合電子メールでダウンロードリンクを送信する

notify_urlパラメータを使用してPHPスクリプトを実行する購入ボタンを作成します。

  1. ストア納税者の電子メール、トランザクションIDとMySQL 、データベース内のいくつかの有用なもの: は、このスクリプトは、次の手順を実行します。
  2. これから一意のキーを生成して保存してください。
  3. 電子メールを作成してユーザーのアドレスに送信します。この電子メールには、一意のキーのようなパラメータを持つ.phpファイルへのリンクが含まれています。 (.php?key=xxxxxxx)顧客がリンクをクリックすると、ファイルはデータベース内のキーをチェックし、ダウンロードするファイルへの実際のリンクを作成します。

これが機能するのか、この解決策に問題があるのだろうか?たぶん私は何らかのセッション処理を使うべきでしょうか?

読んでいただきありがとうございました。アイデアやアドバイスは大歓迎です。

ps:最初に、私は支払い後にユーザーをリダイレクトしたいと思っていましたが、それは常にpaypalアカウントを使用している人のためだけではないことをお読みください。

答えて

1

あなたがPaypal IPNルートを利用している場合は、上記のスクリプトがIPNコールバック後に発生すると想定します。

私は同じようなシステムを自分で実装しましたが、これはかなり簡単です。あなたが出した設計は、私が持っているものとほぼ同じです。 Paypalの取引が完了すると、Paypalのサイトが終了し、サイトの一般的な「お支払いいただきありがとうございました」ページに戻り、メールにファイルのダウンロードリンクが表示されると、それは動作します。あなたのユニークなキーが本当にユニークであると確信していて、キーが推測されたり盗まれたりするのを心配していないなら、問題ではありません。私はまた、キーが可能な「キー共有」に留意するだけでダウンロード用に各キーが何回使用されたかを追跡しました。また、購入1つのダウンロードポリシーを実行したい場合は、それを追跡するためにブールを使用できます。

+0

フィードバックをお寄せいただきありがとうございます。また、「キー共有」を確認することをお勧めします。私はこれを撃つだろう。 – Alex

1

はい、それはIPN、あなたが一度トランザクションが完了したときに話すのペイパルの方法を見て動作します。 Paypalはさまざまな状況でIPNの通知を送信するため、状況は非常に複雑で注意が必要です。私の経験から

  • 1)お客様は、クレジットカードを介してペイパルの購入を行ったり
  • 2を占める)ペイパルサーバは、IPNは、スクリプト
  • 3を応答送信されます)トランザクションが完了していることを確認しますそして
  • 4)キーをダウンロード
  • 5を生成します)は、お客様のメールを保留しない

購入後にお客様のサイトに戻ることに頼らないでください。あなたのIPNスクリプトがすべての作業をするようにしてください。

+0

一般的なメカニズムを書き留めてくれてありがとう、非常に便利です。 – Alex

関連する問題