我有一个表单,其中包含用户填写的有关类的信息,并包括重定向到PayPal的payflowlink的支付信息。在添加payflowlink之前,我将表单信息发布到同一页面,并通过电子邮件将班级信息发送到电子邮件地址。现在,通过将表单的操作设置为payflowlink,类信息不会通过电子邮件发送给我,但支付信息会传递给payflowlink。
我想也许重定向页面可以使用<meta http-equiv="refresh" content="0; url=https://payflowlink.paypal.com">,但是$_POST不会被传递到payflowlink链接。如何获取从重定向页面传递到付费链接页面的$_POST信息?
现在我让表单页面发布信息到重定向页面,重定向页面通过电子邮件发送信息,但$POST没有传递到payflowlink链接。payflowlink页面由PayPal托管。
<!DOCTYPE html>
<html lang="en">
<head>
<title>Registration</title>
<meta http-equiv="refresh" content="0; url=https://payflowlink.paypal.com">
</head>
<body>
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["name"])) {
$name = $_POST['name'];
$EmailBody = "Parent's Name: ".$_POST["name"]."<br>";
}
$subject = "Registration";
SendMail($email, $EmailBody, $subject);
echo ($EmailBody);
}
?>
<main id="main">
<h1>Registration Form</h1>
<p><a href="https://payflowlink.paypal.com">Click this link if you are not redirected</a></p>
</main>
</body>
</html>发布于 2017-04-17 03:25:31
您应该小心使用支付网关。您不应该让用户直接通过您的服务器发布敏感数据,如信用卡号码。您需要将信息直接传递到网关,网关将进行处理,然后重定向回您的站点并传递安全令牌。
https://developer.paypal.com/docs/classic/payflow/integration-guide
但是,您可以在首次从网关请求安全令牌时发送电子邮件。您还可以将一个按钮onclick事件附加到一个按钮上,用户单击该按钮将通过Ajax请求重定向到服务器以发送电子邮件,然后在从服务器获得响应时重定向用户。
发布于 2017-04-17 03:23:24
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST["name"])) {
$name = $_POST['name'];
$EmailBody = "Parent's Name: ".$_POST["name"]."<br>";
$subject = "Registration";
SendMail($email, $EmailBody, $subject);
//echo ($EmailBody);
/* PAYPAL implementation here, instead header(); */
header('Location: https://payflowlink.paypal.com');
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Registration</title>
</head>
<body>
<main id="main">
<h1>Registration Form</h1>
<p><a href="https://payflowlink.paypal.com">Click this link if you are not redirected</a></p>
</main>
</body>
</html>一件事是,在重定向之前,你不能回显。但是你已经收到了电子邮件形式的$Emailbody。
更新
要将$_POST信息传递到付费链接页面,请按照相关接口文档进行操作。
以上示例仅用于基本重定向。
https://stackoverflow.com/questions/43440973
复制相似问题