Creo que lo que necesitas es algo asi:
Código PHP:
<?
session_start();
if(!isset($_SESSION['name']) || !isset($_SESSION['last']) || !isset($_SESSION['phone'])){
$_SESSION['name'] = array();
$_SESSION['last'] = array();
$_SESSION['phone'] = array();
}
else{
if(isset($_POST['nombre']) || isset($_POST['apell']) || isset($_POST['fono'])){
$_SESSION['name'][] = $_POST['nombre'];
$_SESSION['last'][] = $_POST['apell'];
$_SESSION['phone'][] = $_POST['fono'];
}
}
?>
<html>
<head>
<title> </title>
</head>
<body>
<form action="" method="post" name='form'>
<table border='1'>
<tr>
<td>nombre</td>
<td>apellido</td>
<td>fono</td>
</tr>
<?php
if (count($_SESSION['name'])>0){
for($i=0;$i<count($_SESSION['name']);$i++){
echo '<tr>';
echo "<td>".$_SESSION['name'][$i].'<br /></td>';
echo "<td>".$_SESSION['last'][$i].'<br /></td>';
echo "<td>".$_SESSION['phone'][$i].'<br /></td>';
echo '</tr>';
}
}
else{
echo "
<tr>
<td></td>
<td></td>
<td></td>
</tr>";
}
?>
</tr>
<tr>
<td><input type='text' name='nombre'></td>
<td><input type='text' name='apell'></td>
<td><input type='text' name='fono'></td>
</tr>
</table>
<input type='submit' name='insertar' value='insertar'>
</form>
</body>
</html>
Si es así, no nesecitabas crear un arreglo de campos, sino un arreglo de variables y sesiones... :)
Saludos