【发布时间】:2009-03-24 19:59:33
【问题描述】:
对于我的 Web 应用程序 (PHP/MYSQL),我会显示一个项目列表,并在每行显示一个链接以删除该项目。现在,链接是
<a href='item.php?id=3&action=delete'>Delete Item</a>
如果我想改用 POST……我该怎么做(这是一个动态生成的列表)?我可以在不使用表单的情况下发送 POST 数据吗?
或者,对于每个项目,我必须这样做:
<form action='item.php?id={$item_id}' method='POST'>
<input type='hidden' name='action' value='delete'>
<input type='submit' value='delete item'>
</form>
并将提交按钮的样式设置为看起来像原始链接?
我不熟悉 php CURL 或 REST,他们会帮助解决这个问题吗?
【问题讨论】:
-
如果您希望人们/搜索引擎仅通过访问链接从数据库中删除内容,请使用 GET,否则使用 POST。
-
见stackoverflow.com/questions/46585/… 我的理解是在修改状态的时候应该使用POST。
-
看,就像我说的,如果这个页面被网络爬虫访问了怎么办。它只会向页面上的每个链接发出 GET。如果你觉得可以,那我也可以。
-
我知道在这种情况下我应该使用 POST,我的问题是最好的方法是什么。有什么方法可以在不使用 HTML 表单的情况下做到这一点?
-
不行,您需要使用表单或AJAX (JavaScript) 发出POST。