Jump to content

Need to insert a cc in my PHP form to email script


lanacaralee

Recommended Posts

Hello, I have a script (which I found online) that is being used successfully to email results from a website form to an email address. I need it to cc me but I don't know how to add it - help! :)

 

Here's it the code:

 

 

<?

$my_email = "[email protected]";

$from_email = "[email protected]";

$continue = "http://www.renert.com";

$errors = array();

// Remove $_COOKIE elements from $_REQUEST.

if(count($_COOKIE)){foreach(array_keys($_COOKIE) as $value){unset($_REQUEST[$value]);}}

// Validate email field.

if(isset($_REQUEST['email']) && !empty($_REQUEST['email']))
{

$_REQUEST['email'] = trim($_REQUEST['email']);

if(substr_count($_REQUEST['email'],"@") != 1 || stristr($_REQUEST['email']," ") || stristr($_REQUEST['email'],"\\") || 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."Thank you";

$message = stripslashes($message);

$subject = "Renert School Information Request";

$subject = stripslashes($subject);

if($from_email)
{

$headers = "From: " . $from_email;
$headers .= PHP_EOL;
$headers .= "Reply-To: " . $_REQUEST['email'];

}
else
{

$from_name = "";

if(isset($_REQUEST['name']) && !empty($_REQUEST['name'])){$from_name = stripslashes($_REQUEST['name']);}

$headers = "From: {$from_name} <{$_REQUEST['email']}>";

}

mail($my_email,$subject,$message,$headers);

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">



<html lang="en">
<head>
    <meta charset="utf-8">
    <title>The Renert School - A School Like No Other</title>
    <link rel="stylesheet" href="css/form.css" type="text/css" media="all">
</head>

<body>

<div class="globalheader">
    <img src="images/logo.png">
</div>

<center>

<div class="formheader">

<h1>Thank you, <strong><?php if(isset($_REQUEST['name'])){print stripslashes($_REQUEST['name']);} ?></strong>
</h1>
<h3>Your information request has been sent</h3>
<p><a href="<?php print $continue; ?>">Click here to return to the Renert website</a>


</body>

</html>
 

right below the line

$headers = "From: " . $from_email;

add a line

$headers .= "Cc: " . $cc_email;

where $cc_email contains the address you want to cc.

 

May also want to change

if ($from_email)

to

if ($from_email || $cc_email)

in case you ever change the hard coded from address to be blank or you could just get rid of the if entirely.

Note that multiple headers should be separated with "\r\n". For more information, see:

http://php.net/manual/en/function.mail.php

 

Also, for validating e-mail addresses, have you considered the filter_var() function?

http://www.php.net/manual/en/function.filter-var.php

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.