php脚本多表单提交选项的HTML最佳实践

php脚本多表单提交选项的HTML最佳实践,php,html,Php,Html,我最终会遇到这样的情况:我将在一个表、一组div或其他任何地方保存一个条目列表。每个条目都有多个可以执行的操作-“编辑”、“删除”等 从用户界面的角度来看,我比较擅长CSS/HTML,但我对通过表单进行信息管理还不太清楚 我知道我可以使用GET notation(addr.com?id=17&act=edit)让一个超链接指向一个地址,我应该能够使用PHP脚本GET'd to读取这些值。这是一个。。。聪明的如何处理这种情况呢 我不确定它是否足够安全,或者是否有一个共同的方法来处理这种情况。任何关

我最终会遇到这样的情况:我将在一个表、一组div或其他任何地方保存一个条目列表。每个条目都有多个可以执行的操作-“编辑”、“删除”等

从用户界面的角度来看,我比较擅长CSS/HTML,但我对通过表单进行信息管理还不太清楚

我知道我可以使用GET notation(addr.com?id=17&act=edit)让一个超链接指向一个地址,我应该能够使用PHP脚本GET'd to读取这些值。这是一个。。。聪明的如何处理这种情况呢


我不确定它是否足够安全,或者是否有一个共同的方法来处理这种情况。任何关于处理这种情况的常用方法的说明都会非常好。

我经常这样做,而且我几乎总是使用GET符号,正如您所描述的那样。它使分离操作和要操作的记录的UID变得非常容易

e.g. /submit.php?action=edit&uid=17
然后,我们可以在PHP中通过多个操作进行路由,而不是简单地执行以下操作:

<?php

$uid = $_REQUEST['uid'];
switch ( $_REQUEST['action'] ) {
    case 'edit':
        $notice = editRecord ( $uid );
        break;

    case 'delete':
        sqlQuery("DELETE FROM `records` WHERE `uid` = '$uid' LIMIT 1");
        $notice = 'The record has been removed.';
        break;

    case 'rename':
        $newname = $_REQUEST['name'];
        sqlQuery("UPDATE `records` SET `name` = '$newname' WHERE `uid` = '$uid' LIMIT 1");
        $notice = 'The record has been renamed.';
        break;

    default:
}

?>
<h1>Admin Panel</h1>
<?php if ( isset( $notice ) ) echo $notice; ?>

我认为使用GET进行这些操作没有任何问题,因为它被广泛使用。然而,使用可能实际上更安全一些(如果您保护免受攻击等等…)

这完全取决于您需要多少安全措施以及应用程序中的数据或操作的敏感程度。只要您牢记某些安全原则,就可以同时使用GET和POST,甚至可以一起使用。 对于GET和POST,永远不要信任输入、转义和过滤,并尝试防止CSRF和其他攻击,这一点非常重要


我建议你在网上阅读一些教程,试着自己看看什么样的请求方法是最好的选择。

你的条目列表来自哪里?您会使用这些操作编辑/删除这些条目吗?谢谢各位,这正是我想要的:)