calling php from aspx - javascript

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.

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.

improved formatting

I have an HTML form that is a div in a bigger page:
<form action="send_form_email.php" method="post">
<h4>E-mail</h4>
<div class="border-stripes">
<input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
</div>
<h4>Message</h4>
<div class="border-stripes">
<textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
</div>
<br />
<br />
<input id="submit" name="submit" type="submit" value="Submit">
</form>
and I have this php code
if ($_POST['submit']) {
if ($email == false) {
// ***Insert <p>invalid email address</p> above <h4>email</h4>***
} else if (strlen(trim($_REQUEST['message'])) == 0) {
// ***Insert <p>Send a Message</p> above <h4>email</h4>***
} else if (mail($to, $subject, $message, $email)) {
// ***Insert <p>Successfully sent</p> above <h4>email</h4>***
}
}
My problem is that I don't know how to add that extra paragraph according to the if statement, and then I want the page to automatically scroll down to the form displaying the error.
For instance, if the email address was invalid, I want the page to be redirected to the form div and display above "Email" that the email address is invalid
Put your message into a variable for each if statement like this:
if ($_POST['submit']) {
if ($email == false) {
$msg = "<p>invalid email address</p>";
} else if (strlen(trim($_REQUEST['message'])) == 0) {
$msg = "<p>Send a Message</p>";
} else if (mail($to, $subject, $message, $email)) {
$msg = "<p>Successfully sent</p>";
}else{
$msg ="";
}
}else{
$msg = "";
}
And then echo your message above the email field:
<form action="send_form_email.php" method="post">
<?php echo $msg; ?>
<h4>E-mail</h4>
<div class="border-stripes">
<input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
</div>
<h4>Message</h4>
<div class="border-stripes">
<textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
</div>
<br />
<br />
<input id="submit" name="submit" type="submit" value="Submit">
What I understand from the problem you stated here is that -- you want to display error or success message if the post is submitted successfully or not.
For that you you can write both the code in same file send_form_email.php like as below.
<?php
if (isset($_POST)) {
if ($_POST['email'] == false) {
$msg = "<p>invalid email address</p> above <h4>email</h4>";
} else if (strlen(trim($_POST['message'])) == 0) {
$msg = "Insert <p>Send a Message</p> above <h4>email</h4>";
} else if (mail($to, $subject, $message, $email)) {
$msg = "Insert <p>Successfully sent</p> above <h4>email</h4>";
}
}
?>
<html>
<head>
<title> My First Form </title>
</head>
<body>
<form action="send_form_email.php" method="post">
<h4>E-mail</h4>
<div class="border-stripes">
<input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
</div>
<h4>Message</h4>
<div class="border-stripes">
<textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
</div>
<br />
<br />
<input id="submit" name="submit" type="submit" value="Submit">
</form>
<div class="msg-box">
<?php echo $msg ? $msg : ''; ?>
</div>
</body>
</html>

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