php - 来自 MySQL 和 PHP 脚本的 Paypal 定期付款

标签 php mysql paypal paypal-subscriptions recurring

我正在寻找一种使用 PHP 和 MySQL 来跟踪一些产品并在我的网站上销售它们的方法。我在网上找到了以下代码,希望对其进行编辑以使其用于定期付款( Paypal 订阅)而不是单次付款。我不确定定期付款需要更改什么。我已阅读 PayPal 开发人员网站,但那里没有显示我需要的代码。有人可以帮忙吗?

以下是产品的 SQL:

--
-- Table structure for table `products`
--

CREATE TABLE IF NOT EXISTS `products` (
  `id` int(11) NOT NULL,
  `name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `price` float(10,2) NOT NULL,
  `status` tinyint(1) NOT NULL DEFAULT '1'
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8         COLLATE=utf8_unicode_ci;

--
-- Dumping data for table `products`
--

INSERT INTO `products` (`id`, `name`, `price`, `status`) VALUES
(1, 'LavaBasic', 1.99, 1),
(2, 'LavaStarter', 2.99, 1),
(3, 'LavaAdvanced', 4.99, 1),
(4, 'LavaFlow', 5.99, 1);

这是我展示产品的页面上的 PHP:

<body>
    <?php
        //fetch products from the database
        $results = $db->query("SELECT * FROM products");
        while($row = $results->fetch_assoc())
        {
    ?>
    <br/>Name: <?php echo $row['name']; ?>
<br/>Price: <?php echo $row['price']; ?>
<form action="<?php echo $paypal_url; ?>" method="post">

    <!-- Identify your business so that you can collect the payments. -->
    <input type="hidden" name="Lavastack" value="<?php echo $paypal_id; ?>">

    <!-- Specify a Buy Now button. -->
    <input type="hidden" name="cmd" value="_xclick">

    <!-- Specify details about the item that buyers will purchase. -->
    <input type="hidden" name="item_name" value="<?php echo $row['name']; ?>">
    <input type="hidden" name="item_number" value="<?php echo $row['id']; ?>">
    <input type="hidden" name="amount" value="<?php echo $row['price']; ?>">
    <input type="hidden" name="currency_code" value="USD">

    <!-- Specify URLs -->
    <input type='hidden' name='cancel_return' value='http://localhost/nitya/paypal_integration_php/cancel.php'>
    <input type='hidden' name='return' value='http://localhost/nitya/paypal_integration_php/success.php'>


    <!-- Display the payment button. -->
    <input type="image" name="submit" border="0"
    src="https://www.paypalobjects.com/en_US/i/btn/btn_buynow_LG.gif" alt="PayPal - The safer, easier way to pay online">
    <img alt="" border="0" width="1" height="1"   src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" >

    </form>
    <?php } ?>
</body>

我正在尝试找到要进行更改的内容,以便我在 SQL 上列出的价格将按该金额重复出现,而不是一次性付款。任何建议将不胜感激!提前感谢大家。

最佳答案

您只需调整按钮参数即可将按钮变为订阅按钮而不是立即购买按钮。看看PayPal Standard variables documentation更多细节。

具体来说,您将更改此...

<input type="hidden" name="cmd" value="_xclick">

对此...

<input type="hidden" name="cmd" value="_xclick-subscriptions">

然后可以引用recurring payments / subscriptions section文档以查看您需要用于每个期间金额、期间本身(即周、月等)的其他参数是什么。例如,您可以使用“a3”而不是“金额”。

关于php - 来自 MySQL 和 PHP 脚本的 Paypal 定期付款,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33856707/

相关文章:

php - 获取 PHP 数组中的最小值并获取对应的键

mysql - 你能发现 SQL 注入(inject)吗?

api - PayPal API 2 立即购买目的地

mysql - 如何在mysql中将列类型从文本更改为日期

rest - PayPal 支付 REST API - 可用性?

php - Paypal 捐赠按钮?

php - 如何使用 PHP 获取选定日期的星期几?

javascript - 我如何将电子邮件中的信息发送到文本文件

javascript - 如何将地理位置输出导出到日志文件?

mysql - 如何使用连接从 mysql 表中选择相同的列值作为不同的列?