2016-03-06 3 views
0

У меня есть контактная форма на моем сайте. Я хотел бы изменить текст кнопки отправки, чтобы сказать «отправлено» после того, как форма была успешно отправлена, и, возможно, даже заставить ее сказать «отправить», пока форма отправляется. Я не уверен, как это сделать, я мог бы сделать событие onclick, которое изменило бы текст, но не тот маршрут, который я хочу принять, поскольку сообщение не может отправить сообщение, и кнопка все равно будет отправлена.Изменение значения формы Отправить кнопку, чтобы отправить отправленные после отправки формы

Вот мой HTML для формы

<form method="post" action="contact.php"> 
    <input type="text" name="name" placeholder="Name"><br> 
    <input type="email" name="email" placeholder="Email"><br> 
    <textarea rows="8" cols="65" name="message"placeholder="Message"></textarea><br> 
    <input id="submit" type="submit" name="submit" value="Let's Get In Touch"> 
</form> 

и вот мой PHP код:

<?php 

    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $from = 'From: Portfolio Website'; 
    $to = '[email protected]'; 
    $subject = 'Message From Personal Site'; 

    $body = "From: $name\n E-Mail: $email\n Message:\n $message"; 

    if ($_POST['submit']) { 
     if (mail ($to, $subject, $body, $from)) { 
      echo '<p>Your message has been sent!</p>'; 
     } else { 
      echo '<p>Something went wrong, go back and try again!</p>'; 
     } 
    } 
?> 

Есть ли способ сделать это с помощью моего существующего кода PHP? Заранее благодарю за любую помощь.

ответ

0

Если вы не хотите использовать AJAX и вы размещения на самой странице вы можете сделать следующее

<form method="post" action=""> <!-- removed the PHP file name to post to itself --> 
    <input type="text" name="name" placeholder="Name"><br> 
    <input type="email" name="email" placeholder="Email"><br> 
    <textarea rows="8" cols="65" name="message"placeholder="Message"> </textarea><br> 
    <?php 
     if (isset($_POST['submit'])) { 
     echo '<input id="submit" type="button" name="submit" value="Submitted">'; //Changed type submit to button 
     } else { 
     echo '<input id="submit" type="submit" name="submit" value="Let\'s Get In Touch">'; 
     } 
    ?> 
</form> 

<?php 
    $name = $_POST['name']; 
    $email = $_POST['email']; 
    $message = $_POST['message']; 
    $from = 'From: Portfolio Website'; 
    $to = '[email protected]'; 
    $subject = 'Message From Personal Site'; 

    $body = "From: $name\n E-Mail: $email\n Message:\n $message"; 

    if ($_POST['submit']) { 
     if (mail ($to, $subject, $body, $from)) { 
      echo '<p>Your message has been sent!</p>'; 
     } else { 
      echo '<p>Something went wrong, go back and try again!</p>'; 
     } 
    } 
?> 
Смежные вопросы