1

我正在使用 PHP 仅显示 MySQL 表中的选定记录。有一个带有提交按钮的表单,因此用户可以优化他们的搜索(“仅显示 fieldX = valueY 的记录”...)

为了使表格具有粘性,我使用了以下代码:

<input type="checkbox" name="SBS" value="SBS" <?php if($_POST['SBS'] == 'SBS') echo'checked="checked" ' ?> />

唯一的问题是我需要检查默认值。我尝试添加

$_POST['SBS'] = 'SBS';

在顶部,但是这显然每次提交表单时都会设置变量,所以我不能关闭它!

谢谢

4

1 回答 1

2

不要设置$_POST['SBS']。让表单的提交做到这一点。

如果您想默认勾选复选框,那么您可以使用$_SERVER['REQUEST_METHOD']检测 aGET或 a POST

$_POST如果表单已经提交,这将使用,否则如果它是 a GET,它将默认为选中。

<input type="checkbox" name="SBS" value="SBS" <?php if (($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['SBS'] == 'SBS') || $_SERVER['REQUEST_METHOD'] == 'GET') echo'checked="checked" ' ?> />

您还可以通过 a 使用$_REQUEST['SBS']而不是$_POST['SBS']默认POST来自查询字符串或查询字符串的值GET

于 2012-09-16T22:29:37.733 回答