多个复选框值进入数据库循环

时间:2013-01-26 04:51:50

标签: php

尝试在mySQL数据库中插入多个值,这是我到目前为止所做的。

if (in_array(",", $_POST['categories'])) { /* Other was selected */}
        $cat = implode(" ,", $_POST['categories']);
        if (in_array(",", $_POST['subcat'])) { /* Other was selected */}
        $sub = implode(" ,", $_POST['subcat']);
        if (in_array(",", $_POST['type'])) { /* Other was selected */}
        $type = implode(" ,", $_POST['type']);
        if (in_array(",", $_POST['payment'])) { /* Other was selected */}
        $payment = implode(" ,", $_POST['payment']);

        $sql = "INSERT INTO tbl_locations SET

                name='".$_POST['name']."', 
                alias='".$_POST['alias']."',
                category_id='$cat',
                subcategory_id='$sub',
                tourism_type_id='$type',
                lgu_id='$payment',
                latitude='".$_POST['latbox']."', 
                longitude='".$_POST['lngbox']."'
            ";
        $qry= mysql_query($sql) or die (mysql_error());
        if ($qry)
        {   
            header("location:addsuccess.php");
            exit();
        }

正如您所看到的,不仅有1个多个条目,而且还有4个。 。我很欣赏如何继续这样做。 ..我的表格也都有name=name[]所以表格上没有任何问题。它只是将单个值插入到我的数据库而不是多个。

1 个答案:

答案 0 :(得分:0)

您的应用程序的问题是您的数据库设计。如果您可以有多个类别,类型,付款等,那么您需要一个可以处理此问题的关系模型。实现此目的的一种方法是使用一个表来处理您的请求,然后使用子表来查看每个请求的类别,类型,付款等。

> requests table

id date
1  2012-01-25

> categories table

request_id category
1          1
1          2

等等。