1 回答
TA贡献1876条经验 获得超7个赞
PHP 只能在服务器上看到。因此,您应该使用fetch(推荐)或XMLHTTPRequest向服务器发送一个值。
创建一个 PHP 文件,您可以在其中接收$_GET或$_POST变量并处理剩余的付款。在本例中,我将文件ajax_file.php命名为 ,但您可以随意命名它。
添加fetch到您的onApprove方法中。我们将使用该POST方法发送,以便通过该body属性发送数据更容易一些。GET也可以这样做,但工作方式有点不同。
// Finalize the transaction
onApprove: function(data, actions) {
return actions.order.capture().then(function(details) {
// Show a success message to the buyer
alert('Transaction completed by ' + details.payer.name.given_name + '!');
// URL which to send the value to.
const url = 'http://yoursite.com/ajax_file.php';
// Message to send. In this example an object with a state property.
// You can change the properties to whatever you want.
const message = { status: 'success' };
// Send it to the URL with the POST method
// and send the message in JSON format.
fetch(url, {
method: 'POST',
body: JSON.stringify(message)
}).catch(function(error) {
console.log(error); // Display error if there is one.
});
});
}
在您的 PHP 文件中,例如ajax_file.php.
在那里你检查价值。查看它是否已发送以及它是否是正确的值,然后从那里继续流程。
// Check if status send.
$status = isset( $_POST[ 'status'] ) ? $_POST[ 'status' ] : false;
// Check the value of status
if ( $status === 'succes' ) {
// Status is a success.
// Continue your form flow.
}
您的问题不清楚接下来会发生什么,但我希望您能从这里弄清楚。
- 1 回答
- 0 关注
- 139 浏览
添加回答
举报