Форма обратной связи с отправкой почты php - PullRequest
0 голосов
/ 14 марта 2019

У меня есть контактная форма после отправки формы, мне нужно отправить ее по электронной почте. Я новичок в PHP У меня также есть Xampp. если я отправляю форму, она показывает код PHP в браузере. Вот мой HTML-код:

<form class="form-area contact-form text-right" name="myForm" id="myForm"  novalidate action="mail.php" method="POST">
  <div class="row">
    <div class="col-lg-6 form-group">
      <input name="name" id="name" placeholder="Enter your name" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter your name'" class="common-input mb-20 form-control" required="" type="text">
      <input name="email" id="email" placeholder="Enter email address" pattern="[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{1,63}$" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter email address'" class="common-input mb-20 form-control" required="" type="email">
    <div class="invalid-feedback">Please Enter a Valid Email Id.</div>
    <input name="subject" id="subject" placeholder="Enter your subject" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Enter your subject'" class="common-input mb-20 form-control" required="" type="text">
    <div class="mt-20 alert-msg" style="text-align: left;"></div>
    </div>
    <div class="col-lg-6 form-group">
      <textarea class="common-textarea form-control" name="message" id="message" placeholder="Message" onfocus="this.placeholder = ''" onblur="this.placeholder = 'Message'" required=""></textarea>
      <button type="submit" class="primary-btn mt-20 text-white" style="float: right;">Send Message</button>
    </div>
  </div>
</form>

mail.php:

<?php
    $to = 'myname@gmail.com';
    $name = $_POST["name"];
    $email= $_POST["email"];
    $text= $_POST["message"];
    $sub= $_POST["subject"];

echo "Hello world!";



    $headers = 'MIME-Version: 1.0' . "\r\n";
    $headers .= "From: " . $email . "\r\n"; // Sender's E-mail
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    $message ='<table style="width:100%">
        <tr>
            <td>'.$name.'</td>
        </tr>
        <tr><td>Email: '.$email.'</td></tr>
        <tr><td>phone: '.$sub.'</td></tr>
        <tr><td>Text: '.$text.'</td></tr>

    </table>';

    if (@mail($to, $email, $message, $headers))
    {
        echo 'The message has been sent.';
    }else{
        echo 'failed';
    }

?>

Как отправить почту может кто-нибудь мне помочь. Заранее спасибо

1 Ответ

0 голосов
/ 14 марта 2019

ваша кнопка должна иметь имя.isset($_POST['submit'] всегда терпит неудачу, потому что кнопка отправки не называется «отправить», вы только приписали этот тип.

т.е. <button type="submit" name="submit" ....

Вы можете сделать свою жизнь проще, добавив хотя бы еще

if (isset($_POST['submit'])) {
//your code

} else {
echo 'submit not set';
}

, тогда у вас будет хотя бы немноговыход, чтобы помочь вам.

...