[英]how to send redirect page pass variables as post variables from a php script
您可以在POST请求中的PHP Post请求中找到类似的问题,但这在我的上下文中不起作用。
我有一个表单(旅游网站的预订表单),提交表单后,将在脚本中对值进行处理,例如验证和值的计算以及发送电子邮件。
处理完变量后,我想将其发送到付款页面,此页面将把付款详细信息发布到Paypal。
我的问题是在提交预订表格之后,在处理了从预订中获取的值之后,我该如何以一种将变量作为后变量传递的方式重定向页面。 (我不是从另一种形式的答复中寻找,我想重定向到另一种形式)。
要创建POST请求,请使用fsockopen()打开与主机的TCP连接,然后在fsockopen()返回的处理程序上使用fwrite(),该值应与OP头函数中使用的值相同。 或者,您可以使用cURL。
<?php
if(isset($_POST['Name'])) $Name = $_POST['Name'];
if(isset($_POST['Email'])) $Email = $_POST['Email'];
if(isset($_POST['Message'])) $Message= htmlentities($_POST['Message']);
$Curl_Session = curl_init('http://www.yoururl.com/script.php');
curl_setopt ($Curl_Session, CURLOPT_POST, 1);
curl_setopt ($Curl_Session, CURLOPT_POSTFIELDS, "Name=$Name&Email=$Email&Message=$Message");
curl_setopt ($Curl_Session, CURLOPT_FOLLOWLOCATION, 1);
curl_exec ($Curl_Session);
curl_close ($Curl_Session);
?>
其中$ Message是您的变量。
编辑:我很久以前回答了这个问题,也许我确实忘记了从php.net引用,但这是每个评论的链接http://www.askapache.com/htaccess/sending-post-form-data-with-php-curl。 html作为参考
你不能 HTTP没有为使用请求正文中的任何内容(POST数据所在的位置)进行重定向的规定。 您只能使用GET请求进行重定向。 因此,执行此操作的典型方法是将用户带到第二个页面,该页面具有用于“继续使用PayPal”或类似功能的按钮。 该按钮将按正常方式将所有数据过帐到PayPal。
物有所值,如果这是用于贝宝“立即购买”按钮的,则它们实际上(即使没有记录)也允许通过URL发送GET请求中的所有这些表单变量。 我们在其中一个应用程序中执行此操作,其中我们“跟踪”付款过程的开始,然后重定向到包含所有表单字段作为查询字符串的PayPal URL,然后在用户返回时“完成”交易。
好吧,我想如果您要谈论的是在页面之间将数据保存在自己的网站中,则需要使用PHP的会话功能
要开始会话,只需执行session_start();
并添加会话变量,只需使用超全局数组$_SESSION['myvar'] = $value;
然后,您可以通过相同的方式阅读它们print_r($_SESSION[]);
但是,如果您正在谈论使用Paypal API感测数据,我强烈建议您查看其开发人员API手册。
希望有帮助,RayQuang
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.