Saludos nuevamente triby poniendo [] a los names y aplicando el var_dump comprobé que si estaban llegando el arreglo pero me seguía guardando el ultimo registro.
El problema estaba en el ciclo while y for estaba generando que se que con el while incrementara el contador del id y con el for las variables que en cada clico se repetían
3 veces cada una algo asi como id1 variables1...2..3 id2variables1..2...3..etc.
saque el for del while
Código PHP:
$cont=0;//contador para while
$idAsig3=array();
while($idAsig2 = mysql_fetch_array($resultado)){//while que toma los id de los registros
$idAsig3[$cont]=$idAsig2;
$cont++;
}//while
y deje el for aparte.....lo curioso es que si lo manejaba de la forma que lo mencionaste campo='($variable)' me insertaba los paréntesis junto con la variable
Código PHP:
for($i=0;$i<count($Unidad);$i++){//ciclo for para recorrer y actualizar los valores
$sql="UPDATE Temarioplan SET Unidad_tematica='$Unidad[$i]',Subtemas='$Subtemas[$i]',Fecha_prog='$Fprog[$i]',Fecha_real='$Freal[$i]',Eva_prog='$Eprog[$i]',Eva_real='$Ereal[$i]',Por_aprobacion='$Aprobado[$i]',Observaciones='$Observaciones[$i]'
WHERE idTemarioplan=".$idAsig3[$i]['idTemarioplan']."";
$resultado1=mysql_query($sql) or die(mysql_error());}//fin for
oh si eh estado leyendo los enlaces que dejan en el foro de las librerías de Mysqli,solo que por un tanto presionado por el tiempo no me ha sido posible checarlas bien

y el real_escape ese si me estaba olvidando gracias por recordarmelo
te agradezco mucho tu atención y tu ayuda triby