php - POST 表单到 Paypal 时插入 MySQL

标签 php mysql paypal

我已经为此苦苦挣扎了好几个小时,无法解决在用户单击“购买”按钮时在哪里/如何调用 php 函数以将订单详细信息插入 MySQL 的问题(此时这样做可以让我跟踪转到 Paypal 然后被放弃的订单)。

我想把它放在 <form action=> 里标签,(例如,<form action='addToMySQL.php' method='post'>),但这就是 Paypal 网址所在的位置,是吗?函数必须在服务器端运行,所以不能使用 js...所以...如何做到这一点?

有人建议使用 cURL,而且我之前看到有人建议使用它,但是用户是否仍会被重定向到 Paypal 的支付页面,然后返回到我的站点?谁能推荐相关的网络教程?

我是网络编程的新手,所以希望能提供详细信息。

创建要发送到 PayPal 的表单的函数是:

function create_paypal_checkout {
return "
<form action='".PAYPAL_URL."' method='post'>
    <input type='hidden' name = 'business' value='".PAYPAL_ID."' />
    <input type='hidden' name = 'cmd' value='_cart' />
    <input type='hidden' name = 'upload' value='1' />
    <input type='hidden' name = 'currency_code' value='USD' />
    <input type='hidden' name = 'lc' value='US' />
    <input type='hidden' name='rm' value='2' />
    <input type='hidden' name='cancel_return' value='http://www.mydomain.com/'>
    <input type='hidden' name='notify_url' value='http://www.mydomain.com/ipn-listener.php'>
    <input type='hidden' name='return' value='http://www.mydomain.com/thankyou.php?custIP=".$custip."' />

    " . render_shopping_cart($shopping_cart) . "

<table class='formBuyButton'>
<tr id='sc_total'>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td id='ppbutt'>
        <input type='image' name='submit' src='https://www.paypalobjects.com/WEBSCR-640-20110306-1/en_US/i/btn/btn_buynowCC_LG.gif' border='0' alt='PayPal - Buy Now' />
    </td>
</form></tr></table>" ;
}

最佳答案

我遇到了同样的问题,我用ajax解决了。我所做的是在将表单提交给 Paypal 之前使用 ajax 调用 php 脚本。在这里,我使用 jquery 的 post 函数,因为它更容易。您需要在某处安装 jquery 并指向它。当用户提交表单时,首先调用 mycall(),如果返回 true,则将表单提交给 PayPal。

<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
<script type="text/javascript">
    function mycall() {
        $.post('addToMySQL.php', {...}); // Replace ... with arguments
        return true;
    }
</script>

<form action='".PAYPAL_URL."' method='post' onSubmit='return mycall();'>

关于php - POST 表单到 Paypal 时插入 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5623405/

相关文章:

php - 忽略错误的好主意?

php - 根据 innerText 更改背景颜色?

MySQL 虚拟列和通配符

php - mysql 和 PHP 中两个日期之间的差异

MySQL 按时间戳和用户提取最新日志条目

c# - PayPal 与我的网站集成(我已经阅读过现有帖子)

currency - 在 Paypal 上使用不受支持的货币

php - MySQL 为所有用户更新多行

HTTP 上的 Paypal IPN 无法正常工作

php - Laravel 中大型模型的最佳实践