我正在创建一个小应用程序,允许潜在的员工列出引用。列出的参考文献会收到一封包含URL
的电子邮件,其末尾包含唯一字符串。
(例如:www.the-address.com?url=503241c65b8fe4_07914393
)。然后,引用遵循此唯一URL
来代表员工上传一封信。
但每次提交任何表单时,URL的随机字符串部分都会消失
(示例:www.the-address.com?url=
)。
我不明白为什么会发生这种情况,因为我提交了这样的表格:
<form action="upload_letter.php?url="' . $url . '" id="form_id" method="POST">;
$url = $_GET['url']
。
这会发生任何一般原因吗?如果需要,我可以提供更多代码。
答案 0 :(得分:2)
<?php
$data = array('url' => $url);
?>
<form action="upload_letter.php?<?php echo http_build_query($data) ?>" id="form_id" method="POST">
或者您只需将网址添加为隐藏的<input>
<form action="upload_letter.php" id="form_id" method="POST">
<input type="hidden" name="url" value="<?php echo htmlentities($url); ?>">
.
.
.
</form>
然后,您可以通过$_POST['url']
访问网址。
答案 1 :(得分:2)
如果您确实拥有自己编写的代码,那么您将使用第二个action
字符提前关闭"
属性。试试这个:
echo '<form action="upload_letter.php?url='.urlencode($url).'" id="form_id" method="POST">';
你拥有它的方式最终会像HTML一样:
<form action="upload_letter.php?url="google.de" id="form_id"...>
将google.de置于属性值之外。
答案 2 :(得分:0)
将method="POST"
更改为method="GET"
答案 3 :(得分:0)
如果你的代码是你在PHP文件上写的:那就错了。不“;”在HTML行的末尾,你不能用“。”连接字符串。在HTML中。您必须打开PHP标记并在其中编写PHP代码。例如:
<form action="upload_letter.php?url=<?php echo $url; ?>" id="form_id" method="POST">
但你也可以像Wolfgang一样使用echo回答
答案 4 :(得分:-1)
可能$ url为空或未定义。 检查HTML代码以查看它是否写入表单的操作。
答案 5 :(得分:-2)
为什么你把单引号括起来:
. $url .
编辑:另一种说法:
您确定自己使用的是<?php ?>
代码吗?