al parecer el problema no radica en el código que muestras, para pasar arreglos debes de tener algo como esto:
pagina1.php
Código HTML:
<form action="pagina2.php" method="post">
<input type="text" name="prec[]" value="1">
<input type="text" name="prec[]" value="2">
<input type="text" name="prec[]" value="3">
<input type="submit" value="enviar">
</form>
fijate que se agregaron los [] (corchetes) y ya con esto puedes intentar utilizar esto
pagina2.php
Código PHP:
<?php
$precio=$_POST['prec'];//ya no se asigna a un arreglo porque ya viene como tal
$prectot=0;
foreach($precio as $clave => $pre)
{
if($pre!=0)
{
$prectot+=$pre;
}
?>
<input name="precio" type="text" id="precio" value="<?php echo $prectot; ?>" size="10">
</font></td>
<?php
}
?>
suerte y saludos.