2012-02-18 45 views
0

是否可以检索有关将表单发送到另一个网页的网页的信息?我正在开发一个简单的页面,让用户可以选择将表单发送到其他页面,并且可以根据需要配置表单。什么网页发送表单?

它以这种方式工作:用户从我的页面放入他们想要的输入字段,然后显示一个显示完整表格的新页面,并在那里将它提交到新页面。

所以我基本上想知道是否有任何方式(通过PHP或其他语言)检索有关表单来自何处的信息。很明显,他们可以检索用户IP,但他们是否也可以检索有关我的页面的信息?如果是这样,他们会怎么做?我试图在网上找到它,但我根本找不到任何东西。

谢谢!

回答

1

您拥有的唯一一条信息(假设您无法控制发送网页添加字段)是HTTP Referer标头。它可以被省略或伪造,但它是你所拥有的。

1

您可以使用超全球的$_SERVER['HTTP_REFERER']。请注意,这是由浏览器设置的,所以它可能并不总是准确的。

0

HTTP Referer头应该包含浏览器用来访问表单的URL。你如何从PHP中获取它,我不确定。但我认为你应该很好,知道这样的标题存在。

1

如果您问如何从HTTP Post或GET重建所有表单对象,则没有办法。你所能做的只是假设有一个带有名称和值对的表单,但要弄清楚它是来自文本输入框还是复选框或收音机等......这是没有办法的。如果你可以控制初始页面,那么你可以添加更多信息到正在发布的内容,比如每个表单元素,添加一个类型。

<input type="text" name="first".../> 
<input type="hidden" name="first_type" value="input_text" /> 
+0

我其实并没有考虑接收者是否会检查,我打算显示一个警告,说复选框需要一个0或1.我已经记住了,我会让用户为每个表单输入选择“名称”,“值”和“类型”(3个输入)。 – 2012-02-18 17:31:37