1

注:私たちのサイトはPHPで構築されており、MySQLデータベースを使用しています。私はすでにAuthorize.netを使用してショッピングカートを使用して別のサイトを管理しているので、別のプロバイダーを使用するための提案で応答しないでください。私たちがリリースしている新しい製品/サービスは、マーチャントプロバイダーにとって「高リスク」に分類されており、彼らは私たちにa**を請求したいと考えています。それに応じて、Paypal.comでWebsite Payments Standardアカウントを設定することが、次の理由から最善の代替手段であると考えました。

1)月額料金なし、使用した分だけ支払う

2)ブランドを信頼し、人々はPaypalに満足しています

料金は私たちが慣れているよりもかなり高いですが、ハイリスクマーチャントのアカウントは関係ありません。私が遭遇している問題はこれです:

1)当サイトでの登録プロセス全体を通じて、かなりの量のユーザー情報を収集し、SESSION変数を使用してページ間で渡します。Webサイト支払い標準を使用する場合、支払い情報を送信するために、消費者をPaypalが所有するWebページに渡すことを余儀なくされます。正常に完了すると、サイトの「確認」ページに戻ることができますが、古いSESSION変数をそのまま維持する方法はないことを理解しています。全体的な概念は、支払いが正常に行われた後にのみSESSION変数を格納することであるため、これは私たちにとって非常に重要です。

2)Website Payments Standardを使用して、Pay-Amount変数を送信する方法を見つけることができません(すべてを前もって指示する必要があります。つまり、Tシャツは$ 2.99です)。私たちのサイトでは、消費者が複数の人を登録し、各人に複数の「アドオン」を用意できるため、文字通り100を超えるエンドチェックアウト量の可能性があります。これを無効にすることが可能かどうかはわかりません。

誰もが上記の情報を認めてPaypalのウェブサイト支払い基準を使用して運が良かったですか?

4

4 に答える 4

1

1)セッションがCookieベースであると仮定すると、セッションがサイトに戻ったときにまだそこにあるはずです(その間にブラウザウィンドウを閉じていない限り)。

本当に確信が持てない場合は、生成しているorder_idに関連付けられた一時テーブルのデータベースにセッションを保存してください。トランザクションが完了した後、これ(order_id)が返される可能性があると思います。PDTのドキュメントをお読みください。

2)私はそうではないと信じています。250ページ以降のドキュメントを確認してください。

于 2010-07-08T23:21:01.440 に答える
1

私は答えるのに数ヶ月遅れています...しかし私も同じ問題を抱えていました...リターンURLにリダイレクトした後にセッションとCookieを失いました。

同じ問題に直面する人のために、これが私が思いついた解決策です、

ペイパルフォームに追加します

<input type='hidden' name='return' value='".http_dir."shop/return.php'> 
<input type='hidden' name='custom' value='$session_id'>

ここで、$ session_id = session_id();

そしてshop/return.phpで、それがで動作するかどうかをテストしました

echo '<pre>';
print_r($_SESSION);
echo '</pre>';

echo '<pre>';
print_r($_COOKIE);
echo '</pre>';

echo '<pre>';
print_r($_GET);
echo '</pre>';

フォームに「custom」パラメータを含めない場合、空の配列が返されます。たった2行ですべてが変わるのはおかしいです。ショッピングカートのロジック全体を繰り返すつもりだと思っていました。

これが将来誰かに役立つことを願っています...乾杯^^

出典:WPSHTML変数

于 2011-01-19T02:12:06.133 に答える
0

1.)おそらくPDT機能を探しているという点で、上記のピートに同意します。最善の策は、PDT変数のリターンページに送信されたリクエストをダイジェストしてから、セッション変数を作成することだと思われます。

2.)「amount」パラメータを使用して任意の金額を送信できます。PayPalのHTMLパラメータに関する情報は次のとおりです

于 2010-07-19T15:44:59.647 に答える
0

質問2に回答する必要があります。質問1に関しては、PHPの組み込みのSession機能を通常どおりに使用できることを付け加えておきます(その場合に使用している保存メカニズムは、memcached、file(デフォルト)、mysqlのいずれでもかまいません)。データベースなど)、セッションIDをpaypalに渡します。

ペイパルがあなたにコールバックするとき、session_id($ backpassed_sessionid_from_paypal)を使用してセッション変数にアクセスできます。これは、関数に渡すセッションIDに関連付けられたセッションデータをロードするだけです。これはおそらくあなたが意図したことです。

于 2010-07-19T16:01:10.830 に答える