2011-01-28 4 views
2

私は自分のウェブページに2つのフォームを持っています - 特定の情報をデータベースに書き込むものと、Paypalを使って支払いを行うもの(私が持っているページは商品を購入するものです)。私のDBに書いて、同じフォームを使ってPaypalにフォームを提出しますか?

現在、2つのフォームがありますが、両方を同時に送信するようにしたいと思います。つまり、「Paypal」ボタンをクリックすると、両方のフォームがポストされます。

私はそれらを両方とも同じポストメソッドに入れてもらえますか?またはこの問題をどのように解決できますか?

私はそれが顧客が何かを買うことができるようにしたい、Paypalのポストは(実際の支払いのために)実行しますが、ページはまた、顧客の情報で自分のデータベースに書きます。

jQueryや任意のライブラリを使用しても問題ありません。

はここに私のJSです:http://slexy.org/view/s2u2Jsr2RI

ここに私のHTMLです:http://slexy.org/view/s2NgzHRES4

ここに私のpost.phpだ:http://slexy.org/view/s208WfbKso

答えて

0

ポストバック最初の形式を使用して。 "リダイレクト...."とペイパルのフォームコントロールがある別のページに戻ります。そのフォームをページの読み込みに投稿するにはjavascriptを使用します。

又は

は、最初のフォームは、AJAXリクエストを実行さ。ポストバックで、javascriptを実行して2番目のフォームを投稿します。

1

AJAXを使用して元のフォームを送信し、成功したコールバックでPaypalフォームを送信することができます。

+0

私はこれをどのように正確に行いますか? – AKor

+0

@Andrei Korchagin Check [夏の答え](http://stackoverflow.com/questions/4823961/writing-to-my-db-and-submitting-a-form-to-paypal-using-the-same-form/ 4824012#4824012)。 – alex

1

すでにPayPalのフォームを提出するようにjQueryを使用している:

$('#paypalButton').click(function(){ 

    $.post('post.php', $('#myForm').serialize(), function(){ 

    $('#paypal').submit(); 
    }); 

});

#paypalButtonをクリックした直後に他のフォームを投稿してください。

$('#paypalButton').click(function(){ 

    $.post('post.php', $('#myForm').serialize(), function(){ 

    $('#paypal').submit(); 
    }); 

    $.post('mydbprocessingurl.php', $('#myOtherForm').serialize()); 

});

+0

私は少し混乱しています。 Paypalフォームのaction = "https://www.paypal.com/cgi-bin/webscr"、フォームのaction = "post.php"。 paypalフォームは#paypal、dbフォームは#myFormです。私はちょうど名前を正確にどこに置くべきかわからない。 – AKor

+0

こんにちは - 実際、私はあなたの元のコードが動作するはずだと思います。最初に#myFormからpost.phpにデータをポストし、その後、コールバックで#paypalというIDのフォームを送信します。何がうまくいかないの? – Summer

+0

元のコードを実行すると、データベースへの投稿はありません。 – AKor

関連する問題