“字段列表”中的未知列“数组”


Unknown column 'Array' in 'field list'

当我处理下面的代码时,我总是收到此错误:"'字段列表'中的未知列'数组'"。谁能帮我解决这个问题?我是 php 的新手,所以请耐心等待。提前谢谢你。

  //updating conversation members
 function update_cmembers($nc_id,$ids){

$r = "DELETE FROM nc_members WHERE nc_id = '$nc_id' ";
mysql_query($r) or die(mysql_error());

$values = array("($nc_id,{$_SESSION['id']},UNIX_TIMESTAMP(),0,1)");

foreach($ids as $id){
    $id=(int)$id;
    $values[] = "($nc_id,$id,0,0,0)";
}
$sql = "INSERT INTO nc_members      (nc_id,user_id,nc_last_view,nc_deleted,nc_rank) VALUES " . implode(",",$values);
mysql_query($sql) or die(mysql_error());
}

这是抛出错误,因为您正在传递关联数组来内爆函数。因此,内爆函数将它们分发到多个数组并将它们作为值传递。请在数组和 sql 语句之间删除$values此代码。

foreach($ids as $id){
     $id=(int)$id;
     $values[] = "($nc_id,$id,0,0,0)";
}

由于此代码正在将$value数组转换为关联数组。

更改$values = array("($nc_id,{$_SESSION['id']},UNIX_TIMESTAMP(),0,1)");对此:

'$values = array($nc_id,$_SESSION['id'],UNIX_TIMESTAMP(),0,1));

和改变

$sql = "INSERT INTO nc_members (nc_id,user_id,nc_last_view,nc_deleted,nc_rank) VALUES " . implode(",",$values); 自:

$sql = "INSERT INTO nc_members (nc_id,user_id,nc_last_view,nc_deleted,nc_rank) VALUES (" . implode(',',$values).")"