Tu problema no es ese, es que estas dandole un mal uso a list()
tienes que hacer esto:
Código PHP:
$arrayDatos = array("autor" => $autor,
"titulo" => $titulo,
"noticia" => $noticia,
"publi_date" => time());
$campos = array_keys( $arrayDatos );
$valores = array_values( $arrayDatos );
$camposString = array();
$valoresString = array();
foreach( $campos as $campo ) {
$camposString[] = "`" . $campo . "`";
}
$camposString = implode( ",", $camposString );
foreach( $valores as $valor ) {
$valoresString[] = "'" . addslashes( $valor ) . "'";
}
$valoresString = implode( ", ", $valoresString );
$query = mysql_query("INSERT INTO news ($camposString) VALUES (valoresString)") or die(mysql_error());