Aqui tienes lo que has dado antes correjido, busca en google como depurar php que ese es lo que te falla, y tan bien tienes muchos errores conceptuales, estaria bien que te informes mejor de php con algun libro o manual antes de querer hacer cosas mas complejas.
Mira los errores que has tenido y las cosas nuevas que no conozcas buscalas en google para saber como funcionan.
form.php
Código PHP:
<html>
<head>
<title>Array en Forma :: PHP</title>
</head>
<body>
<br />
<b>Selecciona tus postres favoritos:</b><br /><br />
<?php
$preg="unic";
$i=0;
?>
<form method="post" action="pagina2.php">
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Helado de Vainilla">Helado de vanilla<br />
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Pastel de Chocolate">Pastel de Chocolate<br />
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Pay de elote">Pay de elote<br />
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Bubulubu">Bubulubu<br />
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Duraznos en almibar">Duraznos en almibar<br />
<input name="<?php echo $preg.'['.$i++.']'; ?>" type="checkbox" value="Fresas con crema">Fresas con crema<br />
<input name="send" type="submit" id="send" value="Enviar!">
</form>
</body>
</html>
pagina2.php
Código PHP:
<?php
if (isset($_POST['unic']))
{
$array = $_POST['unic'];
if (!is_array($array))
die("Ha ocurrido un error, el valor 'unic' debe ser un array");
echo "Tus postres favoritos son: " .
"<ol>";
foreach($array as $valor) {
echo "<li>$valor</li>";
}
echo "</ol>";
}
?>
Saludos