Ti faccio un esempio su cui lavorare :

$maxFields = 6 ;

$arr = array(
"campo1" => "dato1" ,
"campo2" => "dato2" ,
"campo3" => "dato3" ,
"campo4" => "dato4" ,
"campo5" => "dato5"
)


$query = " insert into mytable(campo1,campo2,campo3,campo4,campo5,campo6) " ;
$values = "" ;

for( $i = 0 ; $i<$maxFields ; $i++ )
{
if( $arr[$i] )
$values .= " '".$v."' , " ;
else
$values .= " '' , " ;
}
if( !$values )
{ die("Inserire almeno 1 valore"); }

$values = substr( $values , 0 , strrpos($values,",") ) ;
$query .= " values ".$values ;

echo $query ;