【问题标题】:Posting file from form to another page将文件从表单发布到另一个页面
【发布时间】:2015-04-18 14:58:58
【问题描述】:
<form id="form1" name="form1" align="center" action="http://www.test.org/add-listing/?listing_type_id=test" method="POST" enctype="multipart/form-data">

<input type="file" Value="UPLOAD RESUME" id="UploadResume" name="UploadResume" >
<br>
<input type="submit" Value="Upload Resume" id="SubmitResume" >
</form>

我正在尝试将表单数据发布到另一个页面;然而,它似乎正试图去 http://www.test.org/add-listing

而不是

http://www.test.org/add-listing/?listing_type_id=test

我这里有什么遗漏吗?

【问题讨论】:

  • 看起来像 - 是什么让你这么认为?一些浏览器/开发工具会尝试通过隐藏查询字符串来美化 url,例如 Opera。看来这是问题所在,或者服务器端正在重定向。
  • 网址仍然显示test.org/add-listing/?listing_type_id=test;但是,页面上的内容是 test.org/add-listing 上的内容。

标签: php forms file-upload http-post


【解决方案1】:

你的表单方法是POST,所以你不能通过GET(URL)传递数据

如果你想传递那个值,你可以使用隐藏输入:

<input type="hidden" name="listing_type_id" value="test">

你可以通过$_POST["listing_type_id"]在另一边得到它

【讨论】:

  • 我没有尝试使用 GET 来传递文件。我正在尝试使用 POST 并且 URL 中的 listing_type_id=test 不是我尝试使用 GET 方法,而是我尝试将信息发送到的页面。整个 URL 是 test.org/add-listing/?listing_type_id=test,但它似乎停在 test.org/add-listing 而无法一直传递到 test.org/add-listing/?listing_type_id=test
  • 不能使用 Web 表单向混合使用 GET 和 POST 的页面发送请求。如果将表单的方法设置为 GET,则所有参数都在查询字符串中。如果将表单的方法设置为 POST,则所有参数都在请求正文中。 (More details)
  • @AdrienXL 发送包含查询字符串参数的 POST 请求是完全可以接受的。
猜你喜欢
  • 1970-01-01
  • 2012-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 1970-01-01
  • 1970-01-01
  • 2016-04-05
相关资源
最近更新 更多