我正在尝试创建一个 php/mysql 系统,在买家使用 paypal 从单个购物车购买多个产品后,返回 URL 将包含一系列项目 id。从那里我可以使用返回页面上的 ID 从系统中删除项目。保存所有购物车数据的 SQL 表称为 userCarts。每次用户访问它时,它都会首先检查项目是否仍然可用,然后运行以下命令:
$DB //db info here
$username = $_SESSION['userlogin'];
$query = SELECT itemID FROM userCarts WHERE user=$username;
$result = $mysqli->query($query);
$items = $result->fetch_array(DB_NUM);
$url = 'http://mysite/return.php?';
$url .= 'items[]=' . implode('&items[]=', array_map('urlencode', $items));
这样我就可以在 Paypal 代码中生成有效的返回 URL:
<input type="hidden" name="return" value="<?php $url ?>">
在 Return.php 上,我可以使用 $_GET['items'] 从可用项目表中删除。
现在这是概念性的,我无法使用 Paypal 沙箱进行测试。我想知道这个阶梯是否可行或者是否有更好的方法。
最佳答案
也许,您的代码应该看起来更像:
$username = $_SESSION['userlogin'];
$result = $mysqli->query("SELECT itemID FROM userCarts WHERE user=$username");
$url = 'http://mysite/return.php';
if($result->num_rows > 0){
$url .= '?';
while($row = $result->fetch_assoc()){
foreach($row as $i => $v){
$url .= "&$i=$v";
}
}
}
$url = rawurlencode($url);
$result->free(); $mysqli->close();
???
关于php - Paypal - 返回 $_GET 的 URL 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21567238/