Как я могу отлаживать поля моего fomulario?

Я использую PHPMailer, послав данные на почту GMail, но после clickear "соглашаться" в alert что проверяет, что почта была послана, мои поля продолжают быть полными информации, которую я послал: кто-то знает, как я могу resetearlos?

Это мой код:







Formulario 




alert('Los campos marcados con * son obligatorios');location.href ='javascript:history.back()';";

    }else{


        require("archivosformulario/class.phpmailer.php");
        $mail = new PHPMailer();    
        $mail->From     = $Email;
        $mail->FromName = $Nombre; 
        $mail->AddAddress("ejemplo@gmail.com"); // Dirección a la que llegaran los mensajes.

        // Aquí van los datos que apareceran en el correo que reciba
        //adjuntamos un archivo 

        $mail->WordWrap = 50; 
        $mail->IsHTML(true);     
        $mail->Subject  =  "Comentarios Tiendas El Golazo";
        $mail->Body     =  "Nombre: $Nombre \n
". "Email: $Email \n
". "Mensaje: $Mensaje \n
". "Telefono: $Telefono \n
"; // Datos del servidor SMTP $mail->IsSMTP(); $mail->Host = "ssl://smtp.gmail.com:465"; // Servidor de Salida. $mail->SMTPAuth = true; $mail->Username = "ejemplo@gmail.com"; // Correo Electrónico $mail->Password = ""; // Contraseña if ($mail->Send()) echo ""; else echo ""; } ?>

Так он увиден, послав информацию и желание знать, как отлаживать это после alert:

introducir la descripción de la imagen aquí

Какая-то подсказка?

1
задан 16.05.2016, 15:59
2 ответа

Проблема здесь:

if ($mail->Send())
echo "<script>alert('Formulario enviado exitosamente, le responderemos lo más pronto posible.');location.href ='javascript:history.back()';</script>";    

else
echo "<script>alert('Error al enviar el formulario');location.href ='javascript:history.back()';</script>";

И в частности в этой части отсюда: location.href ='javascript:history.back() (который конечно ты мог бы упрощать для того, чтобы он был только history.back()), потому что то, что ты делаешь, состоит в том, чтобы говорить ему в браузер, чтобы пошел шаг назад в биографии (в страницу формуляра). Тогда браузер отступит шаг в биографии, но обычно поддержит информацию, введенную пользователем (который является тем, что ты хочешь предотвратить).

Ты мог бы решать это различными способами:

  • Вместо того, чтобы делать history.back(), используй location.href для redireccionar в страницу, которая содержит формуляр прямо (p.e.: location.href='pagina_formulario.php'). Этот метод будет способствовать тому, чтобы, вместо того, чтобы загружается страница, которая есть в кэш-памяти, произвелась новость с формуляром в мишени.

  • Используй событие pageshow окна, чтобы отлаживать формуляр. Это событие работает каждый раз, когда пересекается биография (загрузив новую страницу или нажав кнопки вперед / назад).

    Код язык сценариев JavaScript был бы очень простым и пошел бы на страницу формуляра (после того, как формуляр был загружен):

    <script>
    // cuando se muestre la página
    window.addEventListener('pageshow', function(event) {
        // borra el formulario (asumiendo que sólo hay uno; si hay más, especifica su Id)
        document.querySelector("form").reset();
    });
    </script>
    
0
ответ дан 24.11.2019, 14:22
  • 1
    Большое спасибо этот opci и # 243; n он выбрал, и если была этой проблема, я благодарен много за помощь! –  Alejandro Ruiz 16.05.2016, 20:07

Через javascript метод reset (), для resetear формуляр например:

document.getElementById("myForm").reset();
1
ответ дан 24.11.2019, 14:22
  • 1
    #191; D и # 243; nde я это размещаю? и #191; В рукописном шрифте в часть? –  Alejandro Ruiz 16.05.2016, 06:07
  • 2
    ты можешь помещать это после alert (), который ты посылаешь. –  Juan Pinzón 16.05.2016, 06:10
  • 3
    Это не функционировать и # 237; чтобы в это делать despu и # 233; s alert, потому что быть, и # 237; эксперт отлаживая формуляр в одной p и # 225; gina, в которой формуляр не существует (он существует в предыдущей, не в настоящей) –  Alvaro Montoro♦ 16.05.2016, 15:48
  • 4
    У тебя есть raz и # 243; n, не сосредотачивайтесь на этом, pens и # 233; что все этим манипулировало с js. –  Juan Pinzón 16.05.2016, 19:28

Теги

Похожие вопросы