将表单数据添加到URL最简单的方法是什么?

将表单数据添加到URL最简单的方法是什么?

问题描述:

我创建了一个简单的结算形式与移动网站使用:将表单数据添加到URL最简单的方法是什么?

<form action="" method="GET"> 
     First Name:<br /> 
     <input type="text" name="firstname" /> 
     <br /><hr /> 
     Last Name:<br /> 
     <input type="text" name="lastname" /> 
     <br /><hr /> 
     Phone Number:<br /> 
     <input type="text" name="phonenumber" /> 
     <br /><hr /> 
     Address:<br /> 
     <input type="text" name="address" /> 
     <br /><hr /> 
     Town:<br /> 
     <input type="text" name="town" /> 
     <br /><hr /> 
     County:<br /> 
     <input type="text" name="county" /> 
     <br /><hr /> 
     Postcode:<br /> 
     <input type="text" name="postcode" /> 
     <br /><hr /> 
     Email:<br /> 
     <input type="text" name="email" /> 
     <br /><hr /> 
     <input type="submit" value="Submit" /> 
     </form> 

创建的信息需求仅在URL通过。在这种情况下,会给出基本URL,即domain.com。创建并导航到的URL应如下所示:domain.com/p=firstname+lastname+123+456+7890+123+address+street+etc .....

因为这是针对手机的网站,JavaScript 不能使用。 PHP将是理想的,因为我有一些知识,但其他解决方案也许是可能的。

关于从哪里开始或研究什么的任何指导?

安德斯,

如果您需要发布此到另一个站点,那么你应该使用重定向。

下面是必要的步骤 - >

  1. 后上述形式到自己的PHP页面
  2. 在该页面中,做一个重定向到你需要发布与URL字符串作为页面格式您需要插入您的变量。

在PHP中做了重新定位:

header('Location: http://www.yoursite.com/new_page.html') 
+0

是的,这是你如何做到的。 – chamiltongt 2010-02-11 03:33:10

+0

在阅读表单变量后,确保header()调用发生在php文件的顶部。 – chamiltongt 2010-02-11 03:34:11

如果它是您正在使用的Apache服务器,您可以使用mod_rewrite来正则表达式 - 将网址制作成您想要的任何内容。

+0

或IIS重写,在光谱的另一端。 – 2010-02-10 03:56:13

+0

合理,但我不确定目前的服务器。 – 2010-02-10 03:58:16

使用method="GET"(而不是POST)使浏览器传递表单数据作为URL的一部分(格式为action?fieldName=value&fieldName2=value2)。

+0

所以在我的情况下,使用action =“http://domain.com?p=firstname=value& 有些是有道理的,但在我看来,这将创建一个url firstname = john + lastname = smith而不是john + smith。不幸的是,传递的URL的确切格式很重要。 – 2010-02-10 03:54:36

+0

正确的,你最终会得到firstname = john&lastname = smith,没有办法改变它,如果你有更严格的要求,你不会能够单独使用GET,你需要做一些其他的诡计(比如将表单提交给PHP页面,该页面重新格式化数据并发送实际格式正确的请求) – SoapBox 2010-02-10 04:01:30

您是否必须拥有确切的URL格式?难道你不能得到只是将表单方法更改为GET并使用标准查询字符串格式?如果你真的想要这种格式,你可以在服务器上重定向。坦率地说,我认为常规查询字符串更好(如果你添加一个字段怎么办?)

+0

我被告知我需要格式由我指的网站。你是什么意思“如果我添加一个字段”? – 2010-02-10 03:56:18

+0

说一个中间名字段被添加。那么新的预期格式可能是domain.com/p=firstname+middlename+lastname+123+456+7890+123+address+street+etc。如果网站收到一个缺少字段的请求,他们将不知道缺少哪个字段,将姓氏解释为中间名数据。这就是为什么字段名称很重要。 – 2010-02-10 04:13:09

不完全确定你在问什么,但似乎你想要上面的表单提交自己的URL与所有的变量在URL字符串中。如果是这种情况,您必须将方法更改为GET。至于把这些变量拉入你的接收页面,PHP是好的。为抓住GET变种在PHP语法

$_GET["fname"]; 
+0

对,我知道GET是必要的,但是将所有的变量放在一起......恐怕我还在学习。 – 2010-02-10 03:59:01