Respecto a la validación del correo en html puedes usar que el input sea tipo email pero si el user cambia el html puede evadir esta seguridad, si con javascript puedes validar las campos pero si el usuario desactiva el javascript del navegador '¿'¿'¿ validar correo de una forma buena te comparto está expresión regular que te va a servir mucho
Código PHP:
Ver originalif (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$string)) {
echo "resultado = verdad";
}else{
echo "resultado = falso";
}
validara el correo si tiene un nombre si tiene el @ y si tiene dominio