【问题标题】:Submit POST form from url [closed]从 url 提交 POST 表单 [关闭]
【发布时间】:2012-11-05 02:14:43
【问题描述】:

网站:www.example.com

<form method="POSt" action="" >
    <input type="hidden" name="test1"  value="test11" />
    <input type="hidden" name="test2"  value="" /> 
    <input type="hidden" name="test3"  value="test33" /> 
    <input type="submit" value="Submit">
</form>

我想通过在 URL 中添加正确的参数来汇总此表单。使用 GET,我可以简单地使用:http://ww.example.com/?test1=test11&amp;test2=&amp;test3=test33,表格将被提交。我可以为 POST 做同样的事情吗?如果有,怎么做?

谢谢

【问题讨论】:

  • POST 表示表单值将在标题中传递。如果您在 URL 上传递它们,则它不是 POST
  • 我明白了,是否可以以某种方式发送带有正确数据的标头?
  • 嗯。这样你发布的就会这样做。这就是它的工作原理。
  • 这是个好问题。 SO 模组再次失败。

标签: php html forms post get


【解决方案1】:

您不能从URL 发送POST 参数,因为它们是在header 中发送的。

表格:

<form method="POSt" action="" >
    <input type="hidden" name="test1"  value="test11" />
    <input type="hidden" name="test2"  value="" /> 
    <input type="hidden" name="test3"  value="test33" /> 
    <input type="submit" value="Submit">
</form>

提交表单后,您可以像这样在下一页轻松检索这些值:

<?php echo $_POST["test1"]; ?>
<?php echo $_POST["test2"]; ?>
<?php echo $_POST["test3"]; ?>

【讨论】:

    【解决方案2】:

    你可以像这样尝试 jquery ajax POST:

     $.ajax({
                url: 'http://ww.example.com/',
                data: { test1: $('#test1').val(), test2: $('#test2').val(), test3: $('#test3').val() },
                success: function (response) { alert(respone); },
                error: function (xhr, ajaxOptions, thrownError) { alert(xhr.responseText); }
            });
    

    但它不会在查询字符串中发送,因为 POST 不会在 URL 中发送数据,它用于将数据安全地发送到服务器,如密码等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-04
      • 2022-01-19
      • 1970-01-01
      • 1970-01-01
      • 2012-03-10
      • 2015-10-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多