在我的系统中,用户会将数据输入到表单中,然后由PHP脚本处理。
这个php脚本会操纵这些数据,然后需要将用户重定向到https页面,还要发送自己的POST参数。
因此,例如,如果调用
send-me.php?name=chuck+norris,则应将用户重定向到
https://secret.hideout.com/,其中POST参数为
is_chuck="1" be_polite="definitely" run_away="what's the point?"
这可能吗?怎么样?
由于
答案 0 :(得分:4)
如果你不控制目标站点,我唯一可以看到这样做的方法是在PHP页面上有第二个<form>
,其中https://
URL作为目标,值作为隐藏的领域。
但是,这样,PHP脚本更改后,用户仍可以操作这些值。
或者,根据您需要做的事情的性质,考虑在发布表单之前使用JavaScript在客户端操作值。
答案 1 :(得分:2)
您无法重定向到包含POST参数的网址。
您可以重定向到带有GET参数的网址(附加到网址末尾):
https://secret.hideout.com/?is_chuck=1&be_polite=definitely&run_away=now
您可以使用CURL调用带有POST参数的URL,但不能重定向到它。
答案 2 :(得分:1)
我认为最好的方法是创建表单并从javascript调用提交。
解析你需要的数据后,在send-me.php中的,显示这个html:
<form name="send" action="https://secret.hideout.com/" method="post">
<input type="hidden" name="is_chuck" value="1" />
...
</form>
<script type="text/javascript">
document.forms.send.submit();
</script>
然而这有缺点:
另一方面,你可以建立邮局服务器端,但客户端将没有正确的navgation因为cookie等。
答案 3 :(得分:0)
需要将用户重定向到https页面,但也需要发送自己的POST参数。
那是不可能的。 POST是请求标头,而不是响应。
因此,不要干扰用户和任何服务 总有一种合法的方式来获得交易结果。用它。