Note that there are some explanatory texts on larger screens.

plurals
  1. POPHP contact form issue
    text
    copied!<p>I'm having an issue with a simple PHP contact form. I'm not running into any errors when I send the form, but nothing is being sent to my email. Any help would be appreciated.</p> <p>Here's the HTML</p> <pre><code> &lt;form method="POST" name="contactform" action="contact-form-handler.php"&gt; &lt;p&gt; &lt;label for='name'&gt;Your Name:&lt;/label&gt; &lt;br&gt; &lt;input type="text" name="name"&gt; &lt;/p&gt; &lt;p&gt; &lt;label for='email'&gt;Email Address:&lt;/label&gt; &lt;br&gt; &lt;input type="text" name="email"&gt; &lt;br&gt; &lt;/p&gt; &lt;p&gt; &lt;label for='message'&gt;Message:&lt;/label&gt; &lt;br&gt; &lt;textarea name="message"&gt;&lt;/textarea&gt; &lt;/p&gt; &lt;input type="submit" value="Submit"&gt;&lt;br&gt; &lt;/form&gt; </code></pre> <p>And the PHP</p> <pre><code> &lt;?php $errors = ''; $myemail = 'name@website.com';//&lt;-----Put Your email address here. if(empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message'])) { $errors .= "\n Error: all fields are required"; } $name = $_POST['name']; $email_address = $_POST['email']; $message = $_POST['message']; if (!preg_match( "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email_address)) { $errors .= "\n Error: Invalid email address"; } if( empty($errors)) { $to = $myemail; $email_subject = "Contact form submission: $name"; $email_body = "You have received a new message. ". " Here are the details:\n Name: $name \n Email: $email_address \n Message \n $message"; $headers = "From: $myemail\n"; $headers .= "Reply-To: $email_address"; mail($to,$email_subject,$email_body,$headers); //redirect to the 'thank you' page header('Location: contact-form-thank-you.html'); } ?&gt; &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;Contact form handler&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;!-- This page is displayed only if there is some error --&gt; &lt;?php echo nl2br($errors); ?&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload