Contact form doesn't work on Submit - javascript

I am not sure why my contact doesn't work. It doesn't submit & send data to my email address.
Check it on Live- http://www.arif-khan.net/project/chuck/ContactUs.html
Check out HTML Code-
<form id="contact-form" action="sendmail.php" method="POST" >
<div class="success">Contact form submitted!<br>
<strong>We will be in touch soon.</strong>
</div>
<fieldset>
<label class="name">
<input name="name" type="text" value="Name:">
<span class="error">*This is not a valid name.</span>
<span class="empty">*This field is required.</span>
</label>
<label class="email">
<input name="email" type="email" value="Email:">
<span class="error">*This is not a valid email address.</span>
<span class="empty">*This field is required.</span>
</label>
<label class="phone">
<input name="contact" type="tel" value="Phone:">
<span class="error">*This is not a valid phone number.</span>
<span class="empty">*This field is required.</span>
</label>
<label class="message">
<textarea name="message">Message:</textarea>
<span class="error">*The message is too short.</span>
<span class="empty">*This field is required.</span>
</label>
<div class="form_buttons">
<input type="submit" class="btn-1" value="submit" style="border:0px;">
<!--a href="#" id="submit" class="btn-1 submit" data-type="submit">submit</a-->
Clear
<input id="contact-form" type="hidden" name="contact-form" type="submit"/>
</div>
</fieldset>
</form>
Check out PHP code-
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$contact = $_POST['contact'];
$to = "arifkpi#gmail.com";
$content = 'Customer Request From Pennant Staffing';
$body_message = '---------- Customer Details ---------- '."\r\n\r\n";
$body_message .= 'Name: '. $name."\r\n\r\n";
$body_message .= 'E-mail: ' . $email ."\r\n\r\n";
$body_message .= 'Contact: ' . $contact."\r\n\r\n";
$body_message .= 'Message: ' . $message."\r\n\r\n";
$headers = "From:$name<$email> \r\n";
$headers .= "Reply-To: $email \r\n";
mail($to, $content, $body_message, $headers);
?>
<script language="javascript" type="text/javascript">
window.location = 'ContactUs.html';
</script>

try this:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=UTF-8\r\n";
$headers .= "From:$name<$email> \r\n";
$headers .= "Reply-To: $email \r\n";
mail($to, $content, $body_message, $headers);
for checking mails on localhost u can use "Test Mail Server Tool"

You need to go into the php.ini file you use for this project and search for
[mail function]
and set up the variables for the SMTP server.

Related

Contact form issue?

I have contact form on my website(hosted with Hostinger) it contains 3 fields , i am trying to receive the message on my email so i have created the HTML tags and .php handler.
The problem is nothing happened when i click submit , here is my HTML and PHP:
HTML:
<form method="POST" action="contact-form-handler.php">
<label class="nameLabel">Name:
<input type="text" name="name" id="name" required>
</label>
<label class="emailLabel">Email:
<input type="email" name="email" id="email" required>
</label>
<label class="messageLabel">Message:
<textarea class="textarea" name="message" id="message" required>
</textarea>
</label>
<input type="submit" class="button" value="SEND">
</form>
Here is my .php
<?php
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$message = $_POST['message'];
$email_from ='email#gmail.com';
$email_subject ="Form Submission";
$email_body = "User Name: $name.\n".
"User Email: $visitor_email.\n".
"User Message: $message.\n";
$to = "2ndemail#yahoo.com";
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to,$email_subject,$email_body,$headers);
header("Location: index.html");
?>

php contact form after email sent not going to mailbox

here is my HTML code:
<form class="contact_form contact_form_h" id="form" method="POST" name="contactform"
action="contact-form-handler.php" style="margin-bottom: 10px;">
<div>
<div class="input_holder">
<input class="field-name" type="text" id="name" name="name" placeholder="Name (required)">
</div>
<div class="input_holder">
<input class="email_field" type="text" id="address" name="address" placeholder="Address">
</div>
<div class="input_holder">
<input class="subject_field" type="text" id="company" name="company" placeholder="Company">
</div>
</div>
<div class="clear"></div>
<div>
<div class="input_holder">
<input class="field-name" type="text" id="phone" name="phone" placeholder="Mobile">
</div>
<div class="input_holder">
<input class="email_field" type="text" id="calltime" name="calltime" placeholder="convenient time for ask to call you">
</div>
<div class="input_holder">
<input class="subject_field" type="text" id="email" name="email" placeholder="Email">
</div>
</div>
<div class="textarea_holder">
<textarea class="comment_field" id="message" name="message" placeholder="Your query"></textarea>
</div>
<input type='submit' name='submit' value="submit">
</form>
I have further attached the PHP code:
<?php
/* send the submitted data */
$name=$_REQUEST['name'];
$address=$_REQUEST['address'];
$company=$_REQUEST['company'];
$phone=$_REQUEST['phone'];
$calltime=$_REQUEST['calltime'];
$email=$_REQUEST['email'];
$message=$_REQUEST['message'];
if (($name=="")||($email=="")||($message==""))
{
echo "All fields are required, please fill the form again.";
}
else{
$from="From: $name<$email>\r\n $subject \n $name \n $address \n $company \n $phone \n $calltime \r\n Return-path: $email";
$subject="Message sent using your contact form";
mail("email#website.com", $message, $from);
echo "Email sent!";
}
?>
I tried many searches and testing, but this is the most perfect code i was able to sort out. No idea why its not going to mail box, after submit button it still shows "Thank you" confirmation. Any resolution will be thankful.
in else part change $from as header
$subject = "Your subject";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// More headers
$headers .= 'From: <webmaster#example.com>' . "\r\n";
$message="From: $name<$email>\r\n $subject \n $name \n $address \n $company \n $phone \n $calltime \r\n Return-path: $email";
mail($to,$subject,$message,$headers);
I used this code:
<form name="contactform" method="post" action="send_form_email.php">
<table width="450px">
<tr>
<td valign="top">
<label for="first_name">First Name *</label>
</td>
<td valign="top">
<input type="text" name="first_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top"">
<label for="last_name">Last Name *</label>
</td>
<td valign="top">
<input type="text" name="last_name" maxlength="50" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="email">Email Address *</label>
</td>
<td valign="top">
<input type="text" name="email" maxlength="80" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="telephone">Telephone Number</label>
</td>
<td valign="top">
<input type="text" name="telephone" maxlength="30" size="30">
</td>
</tr>
<tr>
<td valign="top">
<label for="comments">Comments *</label>
</td>
<td valign="top">
<textarea name="comments" maxlength="1000" cols="25" rows="6"></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">
<input type="submit" value="Submit"> Email Form
</td>
</tr>
</table>
</form>
And PHP form as:
<?php
if(isset($_POST['email'])) {
$email_to = "you#yourdomain.com";
$email_subject = "Your email subject line";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['comments'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$telephone = $_POST['telephone']; // not required
$comments = $_POST['comments']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+#[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(!preg_match($string_exp,$last_name)) {
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "First Name: ".clean_string($first_name)."\n";
$email_message .= "Last Name: ".clean_string($last_name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Telephone: ".clean_string($telephone)."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
#mail($email_to, $email_subject, $email_message, $headers);
?>
Thank you for contacting us. We will be in touch with you very soon.
<?php
}
?>
Now i need to just know how to redirect one to a definite page on successful submission.

calling php from aspx

i have a contact form in aspx page that after clicking submit posts to a php page. but from what i see php is not being called. when i click submit no email is sent or when fileds are empty nothing happens.
this is the form in aspx file:
<form action="form-to-email.php" method="post">
<div class="contact-form margin-top">
<label>
<span>Full name</span>
<input type="text" class="input_text" name="name" id="name" />
</label>
<label>
<span>Email</span>
<input type="text" class="input_text" name="email" id="email" />
</label>
<label>
<span>Subject</span>
<input type="text" class="input_text" name="subject" id="subject" />
</label>
<label>
<span>Message</span>
<textarea class="message" name="feedback" id="feedback"></textarea>
<input type="submit" name="submit" id="submit" class="button" value="Submit Form" />
</label>
</div>
</form>
and this is my php page:
<?
if(!isset($_POST['submit']))
{
echo "error; you need to submit the form!";
}
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['feedback'];
if(empty($name)||empty($visitor_email)||empty($subject)||empty($message))
{
echo "All fields are mandatory!";
exit;
}
if(IsInjected($visitor_email))
{
echo "Bad email value!";
exit;
}
$email_from='someone#gmail.com';
$email_subject=$subject;
$email_body= "You have received a message from the user $name .\n Email address: $visitor_email\n Here is the message:\n $message";
$to = 'someone#gmail.com';
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to,$email_subject,$email_body,$headers);
function IsInjected($str)
{
$injections = array('(\n+)',
'(\r+)',
'(\t+)',
'(%0A+)',
'(%0D+)',
'(%08+)',
'(%09+)'
);
$inject = join('|', $injections);
$inject = "/$inject/i";
if(preg_match($inject,$str))
{
return true;
}
else
{
return false;
}
}
?>
i'm using visual studio btw.

Form Redirect Success/Fail page

I have tried to make my form redirect to a success or fail page. I have searched all through the internet, looking at normal form redirects and even javascript onClick redirect's. Can someone help me add with adding a redirect:
HTML:
<!-- ///////////////////////////////////////////////////////////////////////////////// -->
<!-- CONTACT FORM -->
<div class="col-lg-6">
<h1>CONTACT</h1>
<h3 class="service_h3">Say Hello! Ask something?</h3>
<form action="submit_contact.php" id="contactForm">
<fieldset>
<div id="result"></div>
<!-- ///////////////////////////////////////////////////////////////////////////////// -->
<!-- NAME FIELD -->
<div class="form-item">
<label for="name">
<input type="text" name="name" id="name" placeholder="Enter Your Name" required/>
</label>
</div>
<!-- ///////////////////////////////////////////////////////////////////////////////// -->
<!-- EMAIL FIELD -->
<div class="form-item">
<label for="email">
<input type="email" name="email" id="email" placeholder="Enter Your Email" required/>
</label>
</div>
<!-- ///////////////////////////////////////////////////////////////////////////////// -->
<!-- MESSAGE FIELD -->
<div class="form-item">
<label for="message">
<textarea name="message" id="message" placeholder="Your Message" required></textarea>
</label>
</div>
<!-- ///////////////////////////////////////////////////////////////////////////////// -->
<!-- SUBMIT BUTTON -->
<div class="form-item">
<button name="submit" class="submit_btn" action="submit_contact.php" window.open("Done") type="submit">Submit</button>
</div>
</fieldset>
</form>
</div>
PHP:
<?php
/* Subject and Email Variables*/
$emailSubject = 'Contact Form Submission';
$webMaster = 'no-reply#*Hidden*.com';
/* Gathering Data Variables */
$nameField = $_POST['name'];
$emailField = $_POST['email'];
$messageField = $_POST['message'];
$ip = $_SERVER['REMOTE_ADDR'];
$hostaddress = gethostbyaddr($ip);
$browser = $_SERVER['HTTP_USER_AGENT'];
$referred = $_SERVER['HTTP_REFERER'];
$body = <<<EOD
<br><img src="*Hidden*"> <br>GoAerox! Network - Contact Form Submission<hr><br>
<strong>Name:</strong> $nameField <br>
<strong>Email:</strong> $emailField <br>
<strong>Message:</strong> $messageField <br><br>
<hr><br><strong>User Details</strong><br>
<strong>IP Address:</strong> $ip <br>
<strong>Host address:</strong> $hostaddress <br>
<strong>Browser:</strong> $browser <br>
<strong>Referred:</strong> $referred <br>
EOD;
$headers = "From: $emailField\r\n";
$headers .= "Content-type: text/html\r\n";
$success = mail($webMaster, $emailSubject, $body, $headers);
/* Results rendered as HTML */
$theResults = <<<EOD
<html>
**RESULT PAGE**
</html>
EOD;
echo "$theResults";
?>
Please give an answer that is easily read by a amatuer PHP coder. Note: I am happy for this to redirect to a page or popup on the actual contact page. As long as the user can see that the form has been submitted without error.
You can use the following code to redirect to your success or fail page
<?php
$emailSubject = 'Contact Form Submission';
$webMaster = 'no-reply#*Hidden*.com';
$nameField = $_POST['name'];
$emailField = $_POST['email'];
$messageField = $_POST['message'];
$ip = $_SERVER['REMOTE_ADDR'];
$hostaddress = gethostbyaddr($ip);
$browser = $_SERVER['HTTP_USER_AGENT'];
$referred = $_SERVER['HTTP_REFERER'];
$body = <<<EOD
<br><img src="*Hidden*"> <br>GoAerox! Network - Contact Form Submission<hr><br>
<strong>Name:</strong> $nameField <br>
<strong>Email:</strong> $emailField <br>
<strong>Message:</strong> $messageField <br><br>
<hr><br><strong>User Details</strong><br>
<strong>IP Address:</strong> $ip <br>
<strong>Host address:</strong> $hostaddress <br>
<strong>Browser:</strong> $browser <br>
<strong>Referred:</strong> $referred <br>
EOD;
$headers = "From: $emailField\r\n";
$headers .= "Content-type: text/html\r\n";
$success = mail($webMaster, $emailSubject, $body, $headers);
header('location:success.php');
?>
$redirecturl ="Your thank you page url"
header('Location: '.$redirecturl);
Use header function to redirect to another page.
Place this function after your mail function completed.

Wordpress PHP validation using Modal Contact form

Hi im just new to wordpress i'm just confused on how to link my php validation in wordpress.
i have a send.php in my root folder located in wordpress\wp-content\themes\myTheme. my problem is that whenever i click submit in my contact form. it redirects me to the pa Object not found which in fact the send.php is located. am i doing something wrong? or i linked it incorrectly? here is my code for my Modal Contact Form.
<div class = "modal fade" id = "contact" role = "dialog">
<div class = "modal-dialog">
<div class = "modal-content">
<div class = "modal-header">
<h4>Message Me :3 </h4>
</div>
<div class = "modal-body">
<form class="form-horizontal" name="commentform" method="post" action="send.php">
<div class="form-group">
<label class="control-label col-md-4" for="first_name">First Name</label>
<div class="col-md-6">
<input type="text" class="form-control" id="first_name" name="first_name" placeholder="First Name"/>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-4" for="last_name">Last Name</label>
<div class="col-md-6">
<input type="text" class="form-control" id="last_name" name="last_name" placeholder="Last Name"/>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-4" for="email">Email Address</label>
<div class="col-md-6 input-group">
<span class="input-group-addon">#</span>
<input type="email" class="form-control" id="email" name="email" placeholder="Email Address"/>
</div>
</div>
<div class="form-group">
<label class="control-label col-md-4" for="comment">Question or Comment</label>
<div class="col-md-6">
<textarea rows="6" class="form-control" id="comments" name="comments" placeholder="Your question or comment here"></textarea>
</div>
</div>
<div class="form-group">
<div class="col-md-6">
<button type="submit" value="Submit" class="btn btn-primary pull-right">Send</button>
</div>
</div>
</form>
</div>
and here is my send.php code
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "ccmanere#gmail.com";
$email_subject = "Your email subject line";
function died($error) {
// your error code can go here
echo "We are very sorry, but there were error(s) found with the form you submitted. ";
echo "These errors appear below.<br /><br />";
echo $error."<br /><br />";
echo "Please go back and fix these errors.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['email']) ||
!isset($_POST['comments'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$comments = $_POST['comments']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+#[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= 'The Email Address you entered does not appear to be valid.<br />';
}
$string_exp = "/^[A-Za-z\s.'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= 'The First Name you entered does not appear to be valid.<br />';
}
if(!preg_match($string_exp,$last_name)) {
$error_message .= 'The Last Name you entered does not appear to be valid.<br />';
}
if(strlen($comments) < 2) {
$error_message .= 'The Comments you entered do not appear to be valid.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "First Name: ".clean_string($first_name)."\n";
$email_message .= "Last Name: ".clean_string($last_name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
#mail($email_to, $email_subject, $email_message, $headers);
sleep(2);
echo "<meta http-equiv='refresh' content=\"0; url=http://tutsme-webdesign.info/index.php\">";
?>
<?php
}
?>

Categories

Resources