您好,我有一个表单在验证完成时触发警报(或报告已发送或请求检查数据)并且在弹出窗口中单击“接受”时,会留下一个空白屏幕,强制用户返回表单并从那里(更正错误或转到另一个部分)太可怕了!哈哈。
我应该怎么做(我是 php 和 js 的新手)这样:如果出错,请返回表单以便用户检查数据,如果成功,请返回我输入联系表单的部分,通过代码
HTML
<div id="contact_form">
<form action="confFormulario3.php" id="form1" name="form1" method="post">
<input type="text" id="email" class="boton" name="email" placeholder="Tu email">
<input type="text" id="nombre" class="boton" name="nombre" placeholder="Cómo te llamas">
<textarea name="mensaje" id="mensaje" class="boton" placeholder="En qué podemos ayudarte?"></textarea>
<input type="submit" name="Submit" id="buttonEnviar" class="boton" value="ENVIAR">
</form>
</div>
PHP
<?php
/*Capturamos las variables del POST con operadores ternarios*/
$email= filter_var($_POST["email"], FILTER_VALIDATE_EMAIL);
$name= ( empty($_POST["nombre"]) ) ? NULL : $_POST["nombre"];
$message= ( empty($_POST["mensaje"]) ) ? NULL : $_POST["mensaje"];
/*Verificamos que los tres datos fueron posteados*/
if ($email && $name && $message){
$para = '[email protected]';
$asunto = "mensaje de la web de el punto!!!!!!!!!!!!";
$mailheader = "From: ".$email."\r\n";
$mailheader .= "Reaply-To:".$email."\r\n";
$mailheader .= "Content-type: text/html; charset=utf-8\r\n";
$MESSAGE_BODY = "Nombre: ".$name."\n";
$MESSAGE_BODY .= "\n<br>Email: ".$email."\n";
$MESSAGE_BODY .= "\n<br>Mensaje: ".nl2br($message)."\n";
mail($para, $asunto, $MESSAGE_BODY, $mailheader) or die("error al enviar mensaje, intente nuevamente");
echo "<script>
alert('Gracias por tu contacto! en breves nos estaremos comunicando 1');
</script>";
}else{
//Aquí puedes también redirigir con un mensaje de error
echo "<script>alert('Controla la informacion ingresada, el mensaje NO se ha enviado');</script>";
}
?>
非常感谢
1 Answers