gpt4 book ai didi

php - 同时提交 PayPal 表单和更新数据库

转载 作者:行者123 更新时间:2023-11-29 02:05:18 28 4
gpt4 key购买 nike

如果我使用标准的 PayPal 表格进行付款,我是否可以同时更新我的​​数据库,方法是稍微更改代码以包含更新详细信息?

这是我想使用的标准 PayPal 付款表格 - 将根据需要进行更改..

 <form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="payPalForm">

<input type="hidden" name="item_number" value="01 - General Payment to FreelanceSwitch.com">
<input type="hidden" name="cmd" value="_xclick">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="business" value="your@paypalaccount.com">
<input type="hidden" name="currency_code" value="USD">
<input type="hidden" name="return" value="http://freelanceswitch.com/payment-complete/">

Item Details:<br /><input name="item_name" type="text" id="item_name" size="45">
<br /><br />
Amount: <br /><input name="amount" type="text" id="amount" size="45">
<br /><br />
<input type="submit" name="Submit" value="Submit">

</form>

这是我页面中的更新代码:

 $editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form")) {
$updateSQL = sprintf("UPDATE db SET payment_page_completed=%s WHERE id=%s",
GetSQLValueString($_POST['payment_page_completed'], "text"),
GetSQLValueString($_POST['id'], "int"));

mysql_select_db($database_connAdmin, $connAdmin);
$Result1 = mysql_query($updateSQL, $connAdmin) or die(mysql_error());

//$updateGoTo = "confirmation"; WILL NEED TO CHANGE AS NEEDS TO GO TO PAYPAL


if (isset($_SERVER['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
}

这是我现在的状态

 <form action="<?php echo $editFormAction; ?>" name="form" class="" id="form" method="POST" enctype="multipart/form-data">
<input type="hidden" name="id" value="<?php echo $_SESSION['id']; ?>" readonly="readonly">
<input type="hidden" name="payment_page_completed" value="yes" readonly="readonly">
</form>

谢谢

最佳答案

是的,您可以通过两种方式来完成,即向两侧提交表单,在一个表单上提交两次,一个提交到 paypal,另一个提交到您可以将其保存在数据库中的页面。

编辑 1:

在您的表单中添加两个这样的提交:

<input type="submit" name="submit" class="btns" id="submit1" value="Save in DB" onclick="changeWhere('http://yourwebsite.com/savedata.php');" >

<input type="submit" name="submit" class="btns" id="submit2" value="Move to PayPal"
onclick="changeWhere('https://www.paypal.com/cgi-bin/webscr');" disabled="true">

然后在你的脚本中添加:

<script type="text/javascript">

function changeWhere(place){

document.form.action=place; //use your forms name inplace of form

}

</script>

编辑 2:

对两个表单操作使用单一提交

将此添加到您的表单中:

<input type="button" value="Submit" onclick="submitTwice(this.form)">

然后在脚本中添加:

<script type="text/javascript">
function submitTwice(form){
form.action = 'https://www.paypal.com/cgi-bin/webscr';
form.submit();
form.action = 'savedata.php';
form.submit();
}
</script>

它对我有用。 :-)

编辑 3:

savedata.php 可能包含如下代码;

<?php
$item_name = $_POST['item_name'];
$item_price = $_POST['item_price'];
$item_number = $_POST['item_number'];

$sql="Insert into sales (name, price, number) values ('$item_name', '$item_price', '$item_number')";
$result=mysql_query($sql);
?>

希望这对您有所帮助。

关于php - 同时提交 PayPal 表单和更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7304453/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com