【发布时间】:2020-11-07 21:36:04
【问题描述】:
我正在使用 PayPal 智能按钮为我的网站进行付款。当商品缺货时,我该怎么做才能使付款不可用?知道这些物品是单数物品可能会有所帮助,因此库存编号将始终为 1。这是我当前的代码:
<?php
include 'pdo_connect.php';
$product_id = $_GET['product'];
$stmt = $db->prepare("SELECT * FROM products Where id = :id");
$stmt->bindParam(':id', $product_id );
$stmt->execute();
while($row = $stmt->fetch()){
$stock = $row['stock'];
if ($stock > 0){
echo
"<script>
paypal.Buttons({
style: {
shape: 'rect',
color: 'blue',
layout: 'vertical',
label: 'paypal',
locale: 'en_CY'
},
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: ". $row['paypal_price'] .",
currency: 'EUR'
}
}]
});
},
onApprove: function(data, actions) {
return actions.order.capture().then(function(details) {
localStorage.clear();
window.location.href = 'http://localhost/website/thankyou.php';
//alert('Transaction completed by ' + details.payer.name.given_name + '!');
});
}
}).render('#paypal-button-container');
</script>";
}
}
?>
任何见解都将受到高度赞赏。
【问题讨论】:
-
您希望按钮在产品缺货时隐藏,还是将其禁用以便无法点击?
-
在我看来,您已经在使用
stock > 0进行操作,因此该按钮在缺货时不应显示。因此,只需在您的if语句中添加else即可,这样您就可以用红色回应一条消息,例如“该商品目前缺货”。
标签: javascript php paypal payment-gateway