这是前台显示页面,业务逻辑是这样的:
如果填酒店名,就必须填金额,时间(红框位置,三个Input框为酒店名称,消费金额,时间),
但是这6项不是必填项。
我是用from表单提交,然后到控制器页面挨个判断,是否为空,为空该值=0,然后将这些数据整体插入到数据库中,但是这里一共18个值,感觉做法有点差劲,请问是否有比较高端的进行操作呢?
在数据库中,这18个字段是一列。如下:
酒店1,金额1,时间1,酒店2,金额2,时间2.....
这是前台显示页面,业务逻辑是这样的:
如果填酒店名,就必须填金额,时间(红框位置,三个Input框为酒店名称,消费金额,时间),
但是这6项不是必填项。
我是用from表单提交,然后到控制器页面挨个判断,是否为空,为空该值=0,然后将这些数据整体插入到数据库中,但是这里一共18个值,感觉做法有点差劲,请问是否有比较高端的进行操作呢?
在数据库中,这18个字段是一列。如下:
酒店1,金额1,时间1,酒店2,金额2,时间2.....
你看下这样行不行。
把input的value用数组表示,然后后台接收到的所有input在一个数组中
$hotels = array();
$arr = $_POST['arr'];
foreach ($arr as $k => $v) {
if($k%3 == 0){
if($v){
if(!$arr[$k+1] || !$arr[$k+2]){
echo json_encode(array(
"code" => -1,
"msg" => "如果填酒店名,就必须填金额,时间",
));
die;
}
$hotels[] = array(
"name" => $v,
"cost" => $arr[$k+1],
"time" => $arr[$k+2],
);
}else{
$hotels[] = array(0, 0, 0);
}
}
}
echo json_encode(array(
"code" => 0,
"msg" => "success",
));
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
木有高档的做法,判断是否为空,简单粗暴