Форма подписки не работает (PHP)

Я пытаюсь разрешить людям, которые посещают мой сайт, подписываться, заполняя короткую форму и имея на сайте отправку мне электронной почты с информацией, но на данный момент форма даже не представит информацию. Некоторая помощь будет принята с благодарностью.

<form id="ContactForm" action="mail/MailHandler.php"> <div class="success">Form submitted!<br><strong>Look forward to our next Monthly Mailer.</strong></div> <fieldset> <div class="wrapper"> <label class="name"> <span class="bg"><input type="text" value="Name:" class="input"></span> <span class="error">*This is not a valid name.</span> <span class="empty">*This field is required.</span> </label> </div> <div class="wrapper"> <label class="email"> <span class="bg"><input type="text" value="E-mail:" class="input"></span> <span class="error">*This is not a valid email address.</span> <span class="empty">*This field is required.</span> </label> </div> <div class="btns"> <a href="mail/MailHandler.php" class="button1" data-type="submit"> <span><strong>submit</strong></span> <span class="active"><strong>submit</strong></span> </a> </div> </fieldset> </form> 

с PHP следующим образом

 <?php $owner_email = $_POST["myemail@address.com"]; $headers = 'From:' . $_POST["email"]; $subject = 'Monthly Mailer Subscriber ' . $_POST["name"]; $messageBody = ""; $messageBody .= '<p>' . $_POST["name"] . ' would like to be subscribed to your Monthly Mailer!</p>' . "\n"; $messageBody .= '<br>' . "\n"; $messageBody .= '<p>Email Address: ' . $_POST['email'] . '</p>' . "\n"; $messageBody .= '<br>' . "\n"; try{ if(!mail($owner_email, $subject, $messageBody, $headers)){ throw new Exception('mail failed'); }else{ echo 'mail sent'; } }catch(Exception $e){ echo $e->getMessage() ."\n"; } ?> 

ЗАДАЧА РЕШЕНА! Проблема заключалась в том, что у моих входов не было имен и синтаксиса $ owner_email = $ _POST ["myemail@address.com"]; должен был быть $ owner_email = 'myemail@address.com';

Solutions Collecting From Web of "Форма подписки не работает (PHP)"

Проблема № 1

Вы ищете переменные POST но отправляете их через GET так как вы никогда явно не устанавливали его в POST . Чтобы решить это изменение:

 <form id="ContactForm" action="mail/MailHandler.php"> 

чтобы:

 <form id="ContactForm" action="mail/MailHandler.php" method="POST"> 

Проблема №2

Вы забыли указать свои входные имена:

 <input type="text" value="Name:" class="input"> 

должно быть:

 <input type="text" value="Name:" name="name" class="input"> 

Проблема №3

Вам не хватает кнопки отправки:

 <input type="submit" value="submit"> 

Это должно заменить:

 <a href="mail/MailHandler.php" class="button1" data-type="submit"> <span><strong>submit</strong></span> <span class="active"><strong>submit</strong></span> </a> 

Вы не устанавливаете свои имена элементов формы.

Вам необходимо изменить свои входы следующим образом:

  <input type="text" value="E-mail:" name="email" class="input"> <input type="text" value="Name:" name="name" class="input">