
No puedes hacer eso de
$_POST[ad$i]...

.. creo sí habría una manera... pero pa' lo que quieres esta mal...
También haz de saber que
$_POST es ya una matriz...

.. no sé ni qué "resulte" (si lo hicieras funcionar) de algo como
$lisad = array('$_POST[ad$i]')...

solo agregarias un índice a un nuevo array... creo quedaría algo como:
$lisad[0][indice?][ad1]=valor;
$lidas[0][indice?][ad2]=valor;
..... pregunto indice? porque no sé que resultaria del $_POST
$lidad[0][indice?][adn]= valor;
Bueno.. ni al caso... solo como comentario de lo que estarias tratando de hacer... como ves no tiene mucho sentido tener siempre un [0][indice?][ad1] pudiendo tener un simple [ad1]...
Ahora bien... dejándonos de payasadas y ya ayudandote..

... en ves de hacer un
name="ad1" haz un
name="ad[]" con ello pasas un arreglo y puedes recojerlo con
Código PHP:
foreach ($_POST['ad'] as $clave=>$valor)
// donde 'ad' es el nombre de tu arreglo
// $clave será el índice del arreglo
// $valor será el contenido de tu arreglo en $clave
echo "El índice ".$clave." tiene como valor <b>".$valor."</b><br>";
Ahora... como comentario al estar pasando solo un arreglo de la forma
name="ad[]" al recogerlo se le asignarán indices numéricos partiendo de 0 como se haria normalmente... más! puedes pasarle índices que tu quieras de la forma
name="ad['algo']"
Creo me compliqué mucho. Si necesitas algo más "gráfico" hazmelo saber. Suerte!
ah! y
http://mx2.php.net/manual/es/ref.array.php