| | |
Form to Email Troubleshooting
Please support our PHP advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
Thread Solved |
•
•
Join Date: Nov 2007
Posts: 7
Reputation:
Solved Threads: 0
Hey Guys,
I just set up a contact form on my site and used an image as the "send" button. When I get an email from the form, I get x= some number and y= some number. So the form is sending the coordinates where the user clicks on the image over the email but I receive no other information. I obviously want the email address and message info and not the image coordinates. Thanks Guys
I appreciate and help!
I just set up a contact form on my site and used an image as the "send" button. When I get an email from the form, I get x= some number and y= some number. So the form is sending the coordinates where the user clicks on the image over the email but I receive no other information. I obviously want the email address and message info and not the image coordinates. Thanks Guys
<div class="contactform">
<form action="FormToEmail.php" method="POST" name="contactform" id="form1">
<h5>Your Email</h5>
<div class="form"><input type="text" value=""/></div>
<h5>Your Message</h5>
<div class="textarea-box">
<textarea cols="10" rows="10"></textarea>
<div class="alignright"> <input type="image" src="images/sendbtn.jpg">
</div>
</div>
</form>I appreciate and help!
•
•
Join Date: Nov 2007
Posts: 7
Reputation:
Solved Threads: 0
Here is the FormToEmail.php code
<?php
$my_email = "art@nicholasmcgowan.com";
/*
Enter the continue link to offer the user after the form is sent. If you do not change this, your visitor will be given a continue link to your homepage.
If you do change it, remove the "/" symbol below and replace with the name of the page to link to, eg: "mypage.htm" or "http://www.elsewhere.com/page.htm"
*/
$continue = "http://www.nicholasmcgowan.com";
/*
Step 3:
Save this file (FormToEmail.php) and upload it together with your webpage containing the form to your webspace. IMPORTANT - The file name is case sensitive! You must save it exactly as it is named above! Do not put this script in your cgi-bin directory (folder) it may not work from there.
THAT'S IT, FINISHED!
You do not need to make any changes below this line.
*/
$errors = array();
// Remove $_COOKIE elements from $_REQUEST.
if(count($_COOKIE)){foreach(array_keys($_COOKIE) as $value){unset($_REQUEST[$value]);}}
// Check all fields for an email header.
function recursive_array_check_header($element_value)
{
global $set;
if(!is_array($element_value)){if(preg_match("/(%0A|%0D|\n+|\r+)(content-type:|to:|cc:|bcc:)/i",$element_value)){$set = 1;}}
else
{
foreach($element_value as $value){if($set){break;} recursive_array_check_header($value);}
}
}
recursive_array_check_header($_REQUEST);
if($set){$errors[] = "You cannot send an email header";}
unset($set);
// Validate email field.
if(isset($_REQUEST['email']) && !empty($_REQUEST['email']))
{
if(preg_match("/(%0A|%0D|\n+|\r+|:)/i",$_REQUEST['email'])){$errors[] = "Email address may not contain a new line or a colon";}
$_REQUEST['email'] = trim($_REQUEST['email']);
if(substr_count($_REQUEST['email'],"@") != 1 || stristr($_REQUEST['email']," ")){$errors[] = "Email address is invalid";}else{$exploded_email = explode("@",$_REQUEST['email']);if(empty($exploded_email[0]) || strlen($exploded_email[0]) > 64 || empty($exploded_email[1])){$errors[] = "Email address is invalid";}else{if(substr_count($exploded_email[1],".") == 0){$errors[] = "Email address is invalid";}else{$exploded_domain = explode(".",$exploded_email[1]);if(in_array("",$exploded_domain)){$errors[] = "Email address is invalid";}else{foreach($exploded_domain as $value){if(strlen($value) > 63 || !preg_match('/^[a-z0-9-]+$/i',$value)){$errors[] = "Email address is invalid"; break;}}}}}}
}
// Check referrer is from same site.
if(!(isset($_SERVER['HTTP_REFERER']) && !empty($_SERVER['HTTP_REFERER']) && stristr($_SERVER['HTTP_REFERER'],$_SERVER['HTTP_HOST']))){$errors[] = "You must enable referrer logging to use the form";}
// Check for a blank form.
function recursive_array_check_blank($element_value)
{
global $set;
if(!is_array($element_value)){if(!empty($element_value)){$set = 1;}}
else
{
foreach($element_value as $value){if($set){break;} recursive_array_check_blank($value);}
}
}
recursive_array_check_blank($_REQUEST);
if(!$set){$errors[] = "You cannot send a blank form";}
unset($set);
// Display any errors and exit if errors exist.
if(count($errors)){foreach($errors as $value){print "$value<br>";} exit;}
if(!defined("PHP_EOL")){define("PHP_EOL", strtoupper(substr(PHP_OS,0,3) == "WIN") ? "\r\n" : "\n");}
// Build message.
function build_message($request_input){if(!isset($message_output)){$message_output ="";}if(!is_array($request_input)){$message_output = $request_input;}else{foreach($request_input as $key => $value){if(!empty($value)){if(!is_numeric($key)){$message_output .= str_replace("_"," ",ucfirst($key)).": ".build_message($value).PHP_EOL.PHP_EOL;}else{$message_output .= build_message($value).", ";}}}}return rtrim($message_output,", ");}
$message = build_message($_REQUEST);
$message = $message . PHP_EOL.PHP_EOL."-- ".PHP_EOL."";
$message = stripslashes($message);
$subject = "FormToEmail Comments";
$headers = "From: " . $_REQUEST['email'];
mail($my_email,$subject,$message,$headers);
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Dreamweaver Tutorial - Contact Form</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
<div>
<center>
<b>Thank you <?php print stripslashes($_REQUEST['name']); ?></b>
<br>Your message has been sent
<p><a href="<?php print $continue; ?>">Click here to continue</a></p>
</center>
</div>
</body>
</html>•
•
Join Date: Nov 2007
Posts: 7
Reputation:
Solved Threads: 0
Wheres my php guru at?! Any other options or suggestions to make this contact form work???
Thanks,
NIck
Thanks,
NIck
•
•
Join Date: Jan 2009
Posts: 11
Reputation:
Solved Threads: 1
Try this:
<form action="FormToEmail.php" method="POST" name="contactform" id="form1">
<h5>Your Email</h5>
<div class="form"><input name="email" type="text" value=""/></div>
<h5>Your Message</h5>
<div class="textarea-box">
<textarea name="textarea_box" cols="10" rows="10"></textarea>
<div class="alignright"> <input type="image" src="images/sendbtn.jpg"></div>
</div>
</form> Last edited by peter_budo; Jan 18th, 2009 at 2:15 pm. Reason: Keep It Organized - For easy readability, always wrap programming code within posts in [code] (code blocks) and [icode] (inline code) tags.
<button name="name" value="submit" type="submit"><img src="image" alt="alt"></button> creates a form submit that does not care about its own xy loaction Last edited by peter_budo; Jan 18th, 2009 at 2:16 pm. Reason: Keep It Organized - For easy readability, always wrap programming code within posts in [code] (code blocks) and [icode] (inline code) tags.
Failure is not an option It's included free, you don't have to do anything to get it
If at first you dont succeed, join the club
Of course its always in the last place you look, you dont keep looking after you find it
Please mark solved problems, solved
If at first you dont succeed, join the club
Of course its always in the last place you look, you dont keep looking after you find it
Please mark solved problems, solved
![]() |
Similar Threads
- ASP.NET & VB.NET --- Need to have work as a Freelancer . (Post your Resume)
- memory management in wndows 2000 (Windows NT / 2000 / XP)
- C-Dilla - Macrovision spyware (Viruses, Spyware and other Nasties)
- my insert.asp cannot connect to access data (Troubleshooting Dead Machines)
- Form not sending email (PHP)
- Zend PHP Certification (PHP)
Other Threads in the PHP Forum
- Previous Thread: How to execute exe file
- Next Thread: Protect PHP files from being downloaded
| Thread Tools | Search this Thread |
# 5.2.10 ajax apache api array beginner binary broken cakephp checkbox class clean clients cms code cron curl database date display dissertation dynamic echo echo$_get[x]changingitintovariable... email error file files folder form forms function functions google href htaccess html image images include insert integration ip java javascript joomla ldap legislation limit link local login loop mail memberships menu mlm multiple multipletables mysql mysqlquery oop open paypal pdf persist php problem query radio random recursion regex remote rss script search server sessions sms soap sockets source space spam sql syntax system table tutorial update upload url validator variable video web xml youtube






