Para validar que sea numerico el campo usa la funcion is_numeric($_POST[campo]) y para verificar si es un correo valido puedes usar esta funcion:
Código PHP:
function es_correo($correo){
if (ereg("^([a-zA-Z0-9._]+)@([a-zA-Z0-9.-]+).([a-zA-Z]{2,4}$",$correo))
{
$is_mail = true;
}
else
{
$is_mail = false;
}
return $is_mail;
}