Buenas amigos, tengo un formulario al cual necesito aplicarle una validacion al campo del correo para que contenga un formato adecuado o indique un error, el problema es que ya probe varios esquemas sin tener buen resultado, alquien podria ayudarme a encontrar la mejor forma?? gracias
Código PHP:
<?php
session_start();
include_once "intercon.php";
?>
<form method="post" class="registro">
<div><label>nombre:</label> <input name="nombre" type="text"></div>
<div><label>apellido:</label> <input name="apellido" type="text"></div>
<div><label>ciudad:</label> <input name="ciudad" type="text"></div>
<div><label>email:</label> <input name="email" type="text"></div>
<div><label>email:</label> <input name="reemail" type="text"></div>
<div><input name="enviar" value="Registrar" type="submit"></div>
</form>
<?php
function sacar($mensaje){
$novalidos = array("'",'\\','<','>',"\"",";",'/','//','$','%','#','!','´');
$mensaje = str_replace($novalidos, "", $mensaje);
return $mensaje;
}
if(isset($_POST['enviar'])){
if(sacar($_POST['nombre']) == '' or sacar($_POST['apellido']) == '' or sacar($_POST['ciudad']) == '' or sacar($_POST['email']) == '' or sacar($_POST['reemail']) == ''){
echo 'Por favor llene todos los campos.';
}else{
$sql= 'SELECT * FROM newsletter_emails';
$rec= mysql_query($sql);
$verificar_email= 0;
while($result= mysql_fetch_object($rec)){
if($result->email == sacar($_POST['email'])){
$verificar_email = 1;
}
}
if($verificar_email == 0){
if(($_POST['email']) == ($_POST['reemail'])){
$nombre= sacar($_POST['nombre']);
$apellido= sacar($_POST['apellido']);
$ciudad= sacar($_POST['ciudad']);
$email= sacar($_POST['email']);
$sql2= "INSERT INTO newsletter_emails (nombre,apellido,ciudad,email,category) VALUES ('$nombre','$apellido','$ciudad','$email','1')";
mysql_query($sql2);
echo 'Usted se ha registrado correctamente, de ahora en adelante recibirá un correo con los boletines publicados por SASEN.';
}else{
echo '<div class="error">Los correos deben ser iguales, intente nuevamente.</div>';
}
}else{
echo '<div class="error">Este correo ya ha sido registrado anteriormente.</div>';
}
}
}
?>