No puedes enviar un array mediante la función mail(), no al menos como mensaje. El mensaje (y el asunto) deben ser strings. Por otra parte, para enviar un mail con un mensaje que contiene HTML, debes utilizar los dos headers que te puse.
Código PHP:
<?php
if(isset("enviar"){
$mensaje = "<table width=”100%” border=”1″>";
foreach ($_POST as $clave => $valor){
$mensaje .= "<tr><td>".htmlspecialchars(print_r($clave, true))."</td>";
$mensaje .= "<td>".$_POST[$clave]."</td></tr>";
}
$mensaje .= "</table>";
/*No viene al caso pero te recomiendo utilizar la libreria PHPMailer para enviar correos electrónicos que no vayan destinados a ti mismo (necesitas servidor SMTP)*/
$mail = '[email protected]';
$asunto = "Asunto del mensaje(mail)";
//Headers para el envio de mensaje con html.
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
if(mail($mail, $asunto, $mensaje, $headers)){
//Mail enviado
}else{
//Error al enviar el mail
}
} else {
}
?>