php - 如何在 URL 中传递 POST 参数?

标签 php http http-post http-get

基本上,我认为我不能,但我会很高兴被证明是错误的。

我在 PHP 中动态生成一个 HTML 菜单,为每个当前用户添加一个项目,所以我得到类似 <a href="process_user.php?user=<user>> 的内容,但我更喜欢 POST 而不是 GET。

有没有办法将信息作为 POST 参数传递,而不是从可点击的 HREF 链接获取?

我不允许使用 JavaScript。


看起来像Rob is on to something与“您可以使用按钮而不是 anchor ,只需将按钮设置为看起来像链接的样式。这样您就可以将您的值放在同一表单内的隐藏字段中,以通过 POST 发送”

最佳答案

您可以使用样式为链接的表单。不需要 JavaScript:

<form action="/do/stuff.php" method="post">
    <input type="hidden" name="user_id" value="123" />
    <button>Go to user 123</button>
</form>

CSS:

button {
    border: 0;
    padding: 0;
    display: inline;
    background: none;
    text-decoration: underline;
    color: blue;
}
button:hover {
    cursor: pointer;
}

参见:http://jsfiddle.net/SkQRN/

关于php - 如何在 URL 中传递 POST 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6210900/

相关文章:

javascript - 如何使用 JavaScript 向后端发送很长的文本?

PHP: "run"文件/脚本而不是包含?

php - 如何让 CURL 正确执行 HTTP/2 请求?

node.js - 收到第一个字节后停止 superagent(只获取重定向 url)

php - POST 请求仅在 php 中使用 http_build_query

java - UrlEncodedFormEntity 在 Apache HttpClient 4 中做什么?

php - 有没有一种简单的方法可以像使用 NGINX 的 PHP 文件一样直接使用 erb 文件?

php相当于C的fputc

php - MySQL PHP : PDO connection not working when getting credentials from file()

http - 如何使用SRV记录指向80以外的端口