php contact form after email sent not going to mailbox - javascript

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.

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");
?>

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.

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
}
?>

Contact form doesn't work on Submit

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.

Order form in joomla does not submit data

I have Joomla 1.7 working.I want to include order form in one of the pages.I have this part of the code but the problem is that it is not submitting the data to the email.How can I change the data for it to be submitted?This is part of the code.
<div class="orderform"><form id="order_form" method="post" name="order_form">>
<table>
<tbody id="personal_info">
<tr class="label"><th colspan="2">Personal Information</th></tr>
<tr id="row_firstname">
<td class="label">
<div><label for="firstname">First name:<span class="required_star">*</span></label>
</div>
</td>
<td>
<div><input id="firstname" type="text" name="firstname" value="" />
<div id="error_firstname" class="validation_error">Enter your first name</div>
</div>
</td>
</tr>
<tr id="row_lastname">
<td class="label">
<div><label for="lastname">Last name:<span class="required_star">*</span></label></div>
</td>
<td>
<div><input id="lastname" type="text" name="lastname" value="" />
<div id="error_lastname" class="validation_error">Enter your last name</div>
</div>
</td>
</tr>
<tr id="row_email">
<td class="label">
<div><label for="email">Email:<span class="required_star">*</span></label></div>
</td>
<td>
<div><input id="email" type="text" name="email" value="" />
<div id="error_email" class="validation_error">Enter valid email address</div>
</div>
</td>
</tr>
<tr id="row_retype_email">
<td class="label">
<div><label for="retype_email">Re-type email:<span class="required_star">*</span></ label></div>
</td>
<td>
<div><input id="retype_email" type="text" name="retype_email" value="" />
<div id="error_retype_email" class="validation_error">Emails do not coincide</div>
</div>
</td>
</tr>
You will need php for that something like:
<?php
if (isset($_POST['Submit'])) {
if ($_POST['name'] != "") {
$_POST['name'] = filter_var($_POST['name'], FILTER_SANITIZE_STRING);
if ($_POST['name'] == "") {
$errors .= 'Please enter a valid name.<br/><br/>';
}
} else {
$errors .= 'Please enter your name.<br/>';
}
if ($_POST['email'] != "") {
$email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$errors .= "$email is <strong>NOT</strong> a valid email address.<br/><br/>";
}
} else {
$errors .= 'Please enter your email address.<br/>';
}
if ($_POST['homepage'] != "") {
$homepage = filter_var($_POST['homepage'], FILTER_SANITIZE_URL);
if (!filter_var($homepage, FILTER_VALIDATE_URL)) {
$errors .= "$homepage is <strong>NOT</strong> a valid URL.<br/><br/>";
}
} else {
$errors .= 'Please enter your home page.<br/>';
}
if ($_POST['message'] != "") {
$_POST['message'] = filter_var($_POST['message'], FILTER_SANITIZE_STRING);
if ($_POST['message'] == "") {
$errors .= 'Please enter a message to send.<br/>';
}
} else {
$errors .= 'Please enter a message to send.<br/>';
}
if (!$errors) {
$mail_to = 'me#somewhere.com';
$subject = 'New Mail from Form Submission';
$message = 'From: ' . $_POST['name'] . "\n";
$message .= 'Email: ' . $_POST['email'] . "\n";
$message .= 'Homepage: ' . $_POST['homepage'] . "\n";
$message .= "Message:\n" . $_POST['message'] . "\n\n";
//mail($to, $subject, $message);
echo "Thank you for your email!<br/><br/>";
} else {
echo '<div style="color: red">' . $errors . '<br/></div>';
}
}
?>
<form name="form1" method="post" action="form-email.php">
Name: <br/>
<input type="text" name="name" value="<?php echo $_POST['name']; ?>" size="50" /><br/><br/>
Email Address: <br/>
<input type="text" name="email" value="<?php echo $_POST['email']; ?>" size="50"/> <br/><br/>
Home Page: <br/>
<input type="text" name="homepage" value="<?php echo $_POST['homepage']; ?>" size="50" /> <br/><br/>
Message: <br/>
<textarea name="message" rows="5" cols="50"><?php echo $_POST['message']; ?></textarea>
<br/>
<input type="submit" name="Submit" />
</form>
Just make sure that name of your FORM page is : form-email.php (look for action inside FORM HTML and change it if you want). This script is tested and it is working you just need to insert it correctly into your Joomla page.

Categories

Resources