Te resumo lo que no es relevante porque además funciona:
Código PHP:
//Abro el formulario
print '<form name="formulario" method="POST" action="archivo2.php">';
//Aquí consulto la base de datos:
$consulta = "SELECT * FROM categorias ORDER by categorias ASC";
$resultado = mysql_query ($consulta) or die ('Error seleccionando categorias: ' . mysql_error());
while ( $colcat = mysql_fetch_array ( $resultado, MYSQL_NUM ) ) {
$categoria = array($colcat);
foreach ($categoria as $valor) {
echo '<input type="hidden" name="misvalores[]" value="'.$valor.'">';
}
}
// .... el resto es otros inputs ocultos que contienen nombres (name) diferentes y estan pasando sin problemas...
print '<input type="submit" id="submit" name="submit" value="enviar" />';
print '</form>';
No tengo mas en la pagina1.php.