0

我在将数组插入数据库时​​遇到问题。当我尝试内爆时,它全部将所有数组插入一行。我打算实现的是将单个数组插入不同的行。在数组中,我有包、鞋子、衣服等字段,我希望插入一个表但不同的行。

$subjectArray[] =$_POST['subject'];
$all_subjects_to_insert = array();
foreach ($subjectArray as $p){
    if(!empty($p)) $all_subjects_to_insert = $p;      
}
$all_subjects_to_insert = array_unique($all_subjects_to_insert);
$final = implode(',',$all_subjects_to_insert);
$query = "INSERT INTO #__sch_subject (subject) VALUES ('$final')";

我会很感激我得到的任何帮助。谢谢。

4

2 回答 2

0

如果$all_subjects_to_insert是多维数组,那么您正在寻找的是

foreach($all_subjects_to_insert as $value)
{
    $query = "INSERT INTO #__sch_subject (subject) VALUES ('{$value}')";
    mysql_query($query);
 }

参考

于 2013-05-28T09:09:44.007 回答
0

谢谢大家。它现在正在工作。内爆函数的分隔符不正确。这是工作代码

$subjectArray[] =$_POST['subject'];
$all_subjects_to_insert = array();
foreach ($subjectArray as $p){
    if(!empty($p)) $all_subjects_to_insert = $p;      
}
$all_subjects_to_insert = array_unique($all_subjects_to_insert);
$inserted_values = implode("'),('",$all_subjects_to_insert);
print_r($finalvalues);
$query = "INSERT INTO #__sch_subject (subject) VALUES ('$inserted_values')";

使用分隔符插入命令看起来像这样

$query ="INSERT INTO #__sch_subject (Subject) VALUES ('a'),('b'),('c')";

谢谢您的帮助。我真的很感激。

于 2013-05-28T11:29:01.940 回答