Mira en realidad soy lo mas novato que podes encontrar en PHP JaJa. La verdad que como me comentas mucho no entiendo, que es lo que tendría que hacer con ese código y donde los coloco y así voy sacando conclusiones y aprendiendo a mi manera.
Lo modifique de la siguiente manera, creo que entendí bien. ¡Saludos!
<?php
$usuario = (isset($_POST['usuario']))?$_POST['usuario']:NULL;
$clave1 = $_POST['clave1'];
$clave2= $_POST['clave2'];
$correo = $_POST['correo'];
if (empty($usuario)) echo "Debes ingresar un nombre de usuario para registrarte.";
elseif (empty($clave1))
{
echo "Debes ingresar una contraseña para registrarte.";
}
elseif ($clave1 != $clave2)
{
echo "Por favor confirma la contraseña ingresada.";
}
// Aqui una nueva forma para validar el email, usando la funcion "strpos":
elseif (!strpos($correo,"@hotmail.") && !strpos($correo,"@gmail.") && !strpos($correo,"@yahoo.") && !strpos($correo,"live.com."))
{
echo "El correo ingresado es incorrecto.";
}
else
{
$conexion = mysql_connect("localhost","root","");
mysql_select_db("tanatos", $conexion);
$codigo = rand(0000000000,9999999999); // Conseguimos un codigo aleatorio de 10 digitos.
if (!mysql_query("INSERT INTO new_accounts (user,password,email,code) values ('".$usuario."','".$clave1."','".$correo."','".$codigo."')")) die (mysql_error());
$headers = "From: cuentas@uodaery.com.ar";
$mensaje = "Hola $usuario: \n
Te enviamos este correo para completar el proceso de registro. \n
Para activar tu cuenta visita el siguiente enlace: \n
http://localhost/confirmar.php?codigo=".$codigo;
if (!@mail("$correo","Registro","$mensaje","$headers")) die ("No se pudo enviar el email de confirmacion.");
echo "Tu cuenta ha sido registrada, sin embargo, esta requiere que la confirmes desde el email que ingresaste en el registro.";
}
?>