PHP数组和mySql插入

时间:2012-11-19 00:35:39

标签: php mysql arrays foreach mysqli

我发布的数组看起来像4, 6, 7

我无法将这些值插入到sql表中。

这是我到目前为止所拥有的......

$a = array($_POST['newsletterArray']);
$mything = 32;

$values = array();
foreach($a as $key => $value) {
    $values[] = "('{$mything}', '{$value}')";
}
if(sizeof($values)) {
    $query = "INSERT INTO images (news_event_id, newsletter_id) VALUES ".implode(',', $values);
    $result = $mysqli->query($query);
}

此代码插入数组中的第一条记录,但不会插入后续记录。

如果我将$_POST['newsletterArray']替换为4, 6, 7,它可以正常工作,这似乎就是问题所在。

newsletterArray是一个文本输入,如果它有帮助的话。

1 个答案:

答案 0 :(得分:0)

这里没有关联数组。从您所写的内容来看,您的$ a只是一个像这样的列表

a = array(4,6,7);

所以你需要在foreah中以这种方式对待

foreach($a as $value) {
    $values[] = "('{$mything}', '{$value}')";
}

这将完成工作