2

これが私の最初の質問です。

だから私は地元のエンターテインメント紙と広告ビジネスのためにすべてのIT関連のものを実行します。求人広告は、紙からの郵送とオンラインの両方で単語ごとに販売しています。私が来る前は、彼らは単に人々に彼らに広告情報を入れさせ、彼らは自分の数学であり、それから彼らがどれだけ借りているのか、彼らが経験すべきではない面倒なことを教えてくれました。しかし、さらに悪いことに、彼らはいくつかの入力フィールドにクレジットカード情報を入力するだけで、フォームをウェブホストのcgiシステムに送信したときにメールで送られてきました......ひどい考えです。

これまでのところ、PHPを使用してウェブサイトを完全に作り直し、フォームをきれいに見せています。これは、顧客のすべての単語カウント/計算を実行し、読み取り専用フィールドからの最終金額をペイパルの非表示の「金額」変数にコピーします。今すぐ購入ボタン(明らかに、今すぐ支払いを受け取るためにペイパルを使用したいです..)。私の問題は、ボタンが必要な情報を含むフォームをペイパルに送信し、新しい価格で今すぐ購入画面を表示することですが、他のフォームを送信して、ペイパルに行くと同時にメールで送信する必要があります。情報を入手する前に支払いを確認する必要はありません。支払いを行わないものはゴミ箱に捨てることができます。

各フォームは個別に使用すると完全に機能します。情報をメールで送信してから、別のフォームをペイパルに送信して価格を上げるにはどうすればよいですか?私は新しいです...しかし、私はJSをよく理解しているので、それが解決策であれば、素晴らしいです。どんな助けでも大歓迎です。

これが役立つ場合は、フォームを含む.phpファイルへのリンクを参照してください。メールとアクション情報、およびペイパルのビジネスIDを削除したのは、理由だけです。ランダムなフォームをメールに送信したくないし、ペイパルで何か変なことをしたくないのです。とにかくここにリンクhttp://www.whatzup.com/content/diningclub/classified2.php

私のコードはおそらく厄介で専門的ではありませんが、私は17歳で、この仕事を続けているうちに学んでいます。上司はそれを知っています。それを念頭に置いて、何かに関するポインタ/ヒントは素晴らしいでしょう。上部にあるすべてのJavaScriptは、単語数を数えるものか、これを機能させるために実験していたもののいずれかです。最終的なJSを独自のファイルに入れ、数学ファイルと同じようにヘッダーに含めます。

編集: 私はここで本当に困惑しています。これを機能させることができない場合は、送信時に新しいウィンドウに1つのフォームをポップアップ表示して、他のページに戻ってPaypalで支払うように指示する必要があります。 ..これは哀れなほど専門的ではないでしょう。

4

2 に答える 2

1

他の誰かが不思議に思う場合に備えて、これが私がしたことです。最初のフォームは、このphpスクリプトに送信されます。このスクリプトには、新しいフォームが含まれ、古いフォームのデータを使用して金額セクションに入力されます。次に、フォームが正常に送信された場合、2番目はJSで送信されます。

遅延を使用せずに、このような複数のフォームを送信できますが、技術的には1つのページからではなく、ユーザーにはそのように表示されます。

 <script type="text/javascript">

function submitt()
{
setTimeout('document.paypal.submit()',1000);
}
</script>


<?php
$Amount  = $_REQUEST['amount'];
$to      = "XXXX";
$from    = $_REQUEST['email'];
$name    = $_REQUEST['Name'];
$headers = "From: $from" . PHP_EOL;
$subject = "Classified Ad submission";

$fields                         = array();
$fields["Name"]                 = "\nName";
$fields["email"]                = "\nEmail";
$fields["Phone"]                = "\nPhone";
$fields["WorkPhone"]            = "\nWork Phone";
$fields["Address"]              = "\nStreet Address";
$fields["City"]                 = "City";
$fields["State"]                = "State";
$fields["Zip"]                  = "Zip Code";
$fields["Classification"]       = "\nClassification";
$fields["Ad-Headline"]          = "\nHeadline";
$fields["Other-Classification"] = "\nAlternate Classification";
$fields["Ad-Content"]           = "\nAd Content";
$fields["Words"]                = "\nWord Count";
$fields["Weeks"]                = "\nWeeks to Run";
$fields["WordCount"]            = "\nTotal Words";
$fields["Rate"]                 = "\nWord Rate";
$fields["GrossAmountDue"]       = "\nGross Amount";
$fields["NonProfit"]            = "\nNon Profit Ad?";


$body = "This Ad has been submitted:\n\n";
foreach ($fields as $a => $b) {
    $body .= sprintf("%20s: %s\n", $b, $_REQUEST[$a]);
}

if ($from == '') {
    print "You have not entered an email, please go back and try again";
} else {
    if ($name == '') {
        print "You have not entered a name, please go back and try again";
    } else {
        $send = mail($to, $subject, $body, "From: XXXX" . PHP_EOL);
        if ($send) {
            print "Thank you $Name, your Ad has been submitted, redirecting to paypal.";
            echo "<SCRIPT LANGUAGE='javascript'>submitt();</SCRIPT>";
        } else {
            print "ERROR";
        }
    }
}


?> 

<form action="https://www.paypal.com/cgi-bin/webscr" id="paypal" onClick="sendtotal()" target="_top" name="paypal" method="post">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="business" value="XXXXXXXXXXX">
<input type="hidden" name="lc" value="US">
<input type="hidden" name="item_name" value="Classified Ad">
<input type="hidden" name="amount" value="<?php echo $_POST['amount'];?>" />
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="button_subtype" value="services">
<input type="hidden" name="no_note" value="0">
<input type="hidden" name="cn" value="Add special instructions to the seller:">
<input type="hidden" name="no_shipping" value="1">
<input type="hidden" name="shipping" value="0.00">
</form>
于 2012-09-25T17:29:19.503 に答える
1

私が正しく理解している場合、問題は、顧客にPayPalでの支払いと、同時に郵送してもらいたいということです。そして、支払いが完了したら、おそらくあなたにメールを送ります。

簡単な方法は、支払いが完了またはキャンセルされた後に顧客が最終的に表示される「成功ページ」と「キャンセルページ」を使用することです。

これを追加するには、高度な機能の下にあるボタンを編集します。「チェックアウトが完了したら、顧客をこのURLに誘導します」

ここでは、[高度な変数の追加]をオンにして、顧客の一意の識別子または電子メールを追加することもできます。

これらの2つのページで、簡単にメールを送信できます。

正しい方法即時支払い通知(IPN)を使用することですが、最初に簡単な方法を試すことをお勧めします。

于 2012-09-03T17:44:43.477 に答える