0

我正在为我的公司创建一个 PHP 应用程序,并且我使用了大约 50 多个复选框来允许用户选择他们想要提取的表格的哪些部分。但是,现在,如果用户选择了一个复选框,该复选框的对应 SQL 列名不在表中,则没有句柄(它只返回 0 列)。有没有办法轻松处理此类问题?谢谢

4

2 回答 2

1

首先,我不会给用户不可用的选项。

但是,如果您想检查 SQL 中的表结构,请DESCRIBE tablename用作查询,然后遍历查看 column 的结果Field。您应该在构建将获取实际数据的 SQL 查询之前执行此操作,这样您就不会引用任何不存在的列。

于 2012-06-20T15:02:35.493 回答
0

不要为复选框名称指定该列在表中的名称。绝不。如果需要,请给他们编号或不同的名称或其他名称,但在接收数据的 PHP 脚本中,您必须解析所有结果。

例子 :

<input type="checkbox" name="fakeusername" value="true" />

$Username = (isset($_POST['fakeusername']) ? ($_POST['fakeusername'] == 'true' ? true : false) : false);

$Column = array();
if($Username === true){
    $Column[] = '`username`';
}
于 2012-06-20T15:06:51.810 回答