如何在paypal重定向之前提交电子邮件

时间:2014-05-27 14:47:22

标签: php jquery forms paypal

我有一个自定义的paypal购物车,在我被重定向到paypal购买物品之前,我想在后台自动发送带有购物车商品的电子邮件(商品标题,地址,图片链接)。

这是paypal形式

<div id="thebasket">
<form method="post" action="https://www.paypal.com/uk/cgi-bin/webscr">
...
<input type="submit" value="Buy Now" class="pplbuynowbtn">
</form>
</div>

这是js

    $(theDiv).html(theform).ready(function () {
        $(this).find('input').keypress(function (e) {
            if (e.which == 13) {
                var thisitem = $(this).attr("name");
                var thisval = $(this).val();
                $(theDiv).PayPalCart('update', thisitem, thisval);
                return false;
            }
        });
    });

现在,如果我按现在购买,将转到paypal.com,我无法从那里获得他的地址和项目图像。这就是我在paypal之前需要这封电子邮件的原因。

请帮忙吗?

2 个答案:

答案 0 :(得分:4)

我认为提交两个表单将是一个坏主意。

有两种方法:

<强> 1。 AJAX     
显示一个提交按钮,触发提交邮件的AJAX调用,因为ajax请求已完成,现在触发JS函数提交第二个paypal形式。

<强> 2。 PHP

您应该在SUBMIT上触发PHP脚本,其中包含:

    <?php
    function form()
    {
    //form submitting that sends shipping data
    }

    function paypal()
    {
    //curl script for form posting
    $url = 'https://www.paypal.com/uk/cgi-bin/webscr';
    $data = array('amount' => '50');

    // use key 'http' even if you send the request to https://...
    $options = array(
    'http' => array(
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'content' => http_build_query($data),
    ),
    );
    $context  = stream_context_create($options);
    $result = file_get_contents($url, false, $context);

    var_dump($result);}

    ?>

答案 1 :(得分:0)

显示虚假提交按钮“立即购买”,触发发送电子邮件的Ajax调用,然后在成功的Ajax回调中使用$('#thebasker form').submit()来验证您的Paypal表单。