在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/PHP  數據庫/ PHP或mysql如何遍歷

PHP或mysql如何遍歷

這是前臺顯示頁面,業(yè)務邏輯是這樣的:

如果填酒店名,就必須填金額,時間(紅框位置,三個Input框為酒店名稱,消費金額,時間),
但是這6項不是必填項。

我是用from表單提交,然后到控制器頁面挨個判斷,是否為空,為空該值=0,然后將這些數據整體插入到數據庫中,但是這里一共18個值,感覺做法有點差勁,請問是否有比較高端的進行操作呢?

在數據庫中,這18個字段是一列。如下:
酒店1,金額1,時間1,酒店2,金額2,時間2.....

clipboard.png

回答
編輯回答
六扇門

你看下這樣行不行。
把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",
));
2018年1月9日 20:54
編輯回答
話寡

木有高檔的做法,判斷是否為空,簡單粗暴

2018年6月5日 17:42
編輯回答
夏木

表單里的參數可以寫成數組形式:<input type="text" name="time[]" />,這個可以了解一下

2018年8月16日 15:08