Les muestro el formulario:
Código HTML:
<form method="post" class="signin"> <fieldset class="textbox"> <label class="username"> <span> <strong> Nombre y Apellido </strong> </span> <input id="username" name="username" value="" type="text" autocomplete="on" placeholder="Escribe aquí..."> </label> <label class="mail"> <span> <strong> Su Email </strong> </span> <input id="mail" name="mail" value="" type="text" autocomplete="on" placeholder="Escribe aquí..."> </label> <label class="reason"> <span> <strong> Motivo </strong> </span> <input id="subject" name="subject" value="" type="text" autocomplete="on" placeholder="Escribe aquí..."> </label> <label class="comment"> <span> <strong> Consultas </strong> </span> <textarea name="comments" cols="25" rows="10" id="comments" style="resize:none;" placeholder="Escriba aquí* su consulta..." type="text"></textarea> </label> <input class="submit button" type="submit" name="send" value="Enviar"></button> </fieldset> </form>
Código PHP:
if(isset($_POST['send']))
{
if(!isset($_POST['username']) || !isset($_POST['mail']) || !isset($_POST['subject']) || !isset($_POST['comments']))
{
echo "<script> alert('No ha completado todo los datos') </script>;";
}
else
{
$mensaje = "Hola,\n\n\n ".$_POST['username']." se ha contactado contigo a través de www.XxXxXxXx.com.ar.\n\n A continuación el detalle de la consulta:\n\nEmail: ".$_POST['mail']."\n\n Motivo de la consulta: ".$_POST['subject']."\n\n La consulta: ".$_POST['comments'];
if(mail("[email protected]","Se han contactado contigo a través de: XxXxXxXx.com.ar", $mensaje))
{
echo "<script> alert('Se ha enviado con éxito') </script>;";
}
else
{
echo "<script> alert('Fallo del envío. Compruebe que estén todos los datos y vuelva a intentarlo') </script>;";
}
}
};
El problema acá es que, cuando hago click en el botón "Enviar" sin completar los campos, entra en los diferentes IF hasta que llega al "echo "<script> alert('Se ha enviado con éxito') </script>", lo imprime y manda el mail sin haber completado los campos..... Como podría solucionarlo para que no se pueda enviar hasta que los campos esten validados realmente?
Muchas gracias.