【问题标题】:Posting data through hyperlinks通过超链接发布数据
【发布时间】:2010-11-05 04:01:03
【问题描述】:

我想通过单击链接(用<a> 括起来)而不是常规表单的“提交”按钮来发布($_GET 和 $_POST)数据。首选语言:PHP

我在今天的很多网站上都看到了这一点, 通过单击看起来像超链接的按钮提交表单。 所以想知道怎么做。

提前致谢

【问题讨论】:

    标签: php post hyperlink


    【解决方案1】:

    当心点击链接发布数据! 蜘蛛可能会跟随此链接并更改数据。

    你可能想要这样的东西:

    <a href="#" onclick="form.Submit();">submit</a>
    

    【讨论】:

    • 作为 JS 不可用时的后备 go,“到页面顶部的链接 (#)”非常糟糕。
    • 如果方法设置为“post”,好的蜘蛛不会提交表单
    【解决方案2】:

    您可以使用Javascript提交表单。

    <a href='document.myform.submit()'>Submit Button</a>
    

    【讨论】:

    • 作为 URL,这是一个正常的相对 URL(但相当丑陋)
    • 我不太懂 Javascript,无法提交数据。也许你可以指定提交()的代码
    【解决方案3】:

    你可以这样做:

    <a href='myform.php?name=Bob&surname=Terrier'>Click here</a>
    

    这会将name 和surname 作为GET 变量提交到表单。

    但请注意任何修改数据的表单,因为搜索引擎和蜘蛛会遍历它们不遍历表单的链接。

    【讨论】:

    • +1 用于在通过 URL 提交数据时提及“GET”方法。
    • 我也需要发布 &_POST 数据
    • @OrangeRind:然后你应该更新你原来的问题,那里没有提到“POST”。
    • @TFM 嗯。问题的第 4 个单词?
    • “我想发布数据”有点赠品:-)
    【解决方案4】:

    表单旨在通过按钮提交。您可以使用 JavaScript 使链接提交它,但是当 JS 不可用时这会中断。即使 JavaScript 可用,使用链接也将使用在屏幕阅读器处于“表单模式”时不会显示的控件,从而使屏幕阅读器用户无法通过任何明显的方式提交表单。

    CSS 是一种更安全的替代方案(请参阅http://tom.me.uk/scripting/submit.html)。

    【讨论】:

    • 即使我们不合适 - 你的回答仍然得到我的投票;)
    【解决方案5】:

    This post 在 Ajaxian 上可能会有所帮助。它链接到一篇非常深入的博客文章,向您展示如何将 CSS 应用于按钮,使它们看起来像链接。

    与使用正确链接相比,这里的优势在于“假链接”实际上是一个按钮,因此它的行为与按钮完全一样,只是看起来像一个链接。蜘蛛不会跟随它,屏幕阅读器会以不同的方式对待它,就发布 http 帖子而言,这是更“正确”的做法。

    【讨论】:

    • 不用担心。事实证明这是一个非常热门的小问题:-)
    • 可能会考虑投票。 ;)
    【解决方案6】:

    从其他答案中可以看出,如果要从带有链接的表单提交用户数据,则必须使用 JavaScript。这意味着您排除了 JavaScript 关闭、不可用或与您的代码不兼容的任何人。另一方面,您可以尝试使用 CSS 设置按钮样式,使其看起来像一个链接。

    【讨论】:

      猜你喜欢
      • 2018-10-18
      • 1970-01-01
      • 2012-05-24
      • 2015-12-20
      • 2013-11-09
      • 2016-01-13
      • 2023-03-11
      • 2012-04-30
      • 1970-01-01
      相关资源
      最近更新 更多