【发布时间】:2015-03-23 09:34:21
【问题描述】:
我有一长串需要插入数据库的表单值。有没有一种有效的方法可以将所有这些值插入到我的数据库中的单独列中,而不是一长串庞大的条件?
这是我的代码:
PHP:
// I've removed most of them to simplify demonstration
$title = isset($_POST['title']) ? $_POST['title'] : "";
$name = isset($_POST['name']) ? $_POST['name'] : "";
$description = isset($_POST['description']) ? $_POST['description'] : "";
$how_hear = isset($_POST['how_hear']) ? $_POST['how_hear'] : "";
// I have to do this for every single form element:
if (!empty($title)) {
DB::query('INSERT INTO `table` (`title`) VALUES (?);', array($title));
}
【问题讨论】:
-
这一切都取决于如果每个字段都留空会发生什么?例如,如果
$name为空白,大概您不希望任何 数据写入数据库?例如,如果$how_hear是可选的,那么将其留空就可以了? -
我有处理所有这些的 JavaScript 表单验证。我所做的就是插入不为空的东西
-
那么,如果一个是空的,那它还应该继续插入其他的吗?在这种情况下,您可以只循环遍历
$_POST,而不是显式写出每个项目的条件。 -
好的,谢谢,如何循环浏览帖子?还要注意每一列都有不同的名称,那么我应该如何在循环中将值插入到不同的列中
-
抱歉回复晚了,但我现在在下面添加了一个答案——我认为——应该做你需要的一切!