Php 将多个复选框值放入数据库循环中
尝试在我的mySQL数据库中插入多个值,这就是我目前得到的结果Php 将多个复选框值放入数据库循环中,php,Php,尝试在我的mySQL数据库中插入多个值,这就是我目前得到的结果 if (in_array(",", $_POST['categories'])) { /* Other was selected */} $cat = implode(" ,", $_POST['categories']); if (in_array(",", $_POST['subcat'])) { /* Other was selected */} $sub = implode("
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[]
,因此表单上没有问题。它只是将单个值插入my db,而不是多个值。应用程序的问题在于数据库设计。如果您可以有多个类别、类型、付款等,那么您需要一个能够处理此问题的关系模型。实现这一点的一种方法是使用一个表来处理您的请求,然后使用子表来处理每个请求的类别、类型、付款等
> requests table
id date
1 2012-01-25
> categories table
request_id category
1 1
1 2
>请求表
身份证日期
1 2012-01-25
>类别表
请求id类别
1 1
1 2
等等。查找SQL注入。这是非常非常不安全的代码。了解。但这只是一个练习网站。练习
mysqli\uuu
或PDO
;不推荐使用的函数。