我在将数组插入数据库时遇到问题。当我尝试内爆时,它将所有数组插入一行。我打算实现的是将单个数组插入不同的行。 在数组中我有包,鞋,布等字段,我希望插入一个表但不同的行。
$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')";
我会感激任何帮助。感谢。
答案 0 :(得分:0)
如果$all_subjects_to_insert
是多维数组,那么你要找的是
foreach($all_subjects_to_insert as $value)
{
$query = "INSERT INTO #__sch_subject (subject) VALUES ('{$value}')";
mysql_query($query);
}
答案 1 :(得分: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')";
使用分隔符,insert命令看起来像这样
$query ="INSERT INTO #__sch_subject (Subject) VALUES ('a'),('b'),('c')";
感谢您的帮助。我真的很感激。