Skip to content

Instantly share code, notes, and snippets.

@byjujohn
Forked from smonteverdi/gist:1993942
Created September 13, 2012 11:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save byjujohn/3713871 to your computer and use it in GitHub Desktop.
Save byjujohn/3713871 to your computer and use it in GitHub Desktop.
PHP: Send Email
<?
if (isset($_REQUEST["id"]) && ($_REQUEST["id"]<>"")) {
$data1=mysql_query("SELECT * FROM your_table WHERE id=".$_REQUEST["id"]);
$data=mysql_fetch_array($data1);
$from =mymail@mydomain.com;
$to = $data["email_field"];
$user = $data["name_field"];
$subject = "Enter your subject line here"; /*or if it comes from the table*/ $subject = $data["subject_field"];
$header="From:" . $from . "\r\n " ."Reply-To:". $from ;
$body="Hello ". $user .",\n\nFirst line\n\nYour message goes here, \nbest regards,\nyour_name and such\n";
mail ($to,$subject,$body,$header);
Open a new window with a message, such as:
echo "Your e-mail has been sent";
Or redirect to another page:
header("Location: "."gotopage.php?msg=".urlencode("Your e-mail has been sent"));
exit();
End the IF loop. If the IF statement was not true, the script terminates.
} //endif
?>
NOTES:
1. $_REQUEST["id"] can be $_POST["id"] if the input comes from a form that uses the POST method.
2. ["id"] can also be coded as ['id'] or even [id]. For precise details see the PHP manual.
3. There are an unlimited number of possibilities on building the data to be sent. You can build up the message, the header, or include even other variables such as f.e. BCC in the mail function. F.e. the header (you can use header or headers) can contain many things such as:
$headers = "MIME-Version: 1.0\r\n"; //define the mime type
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; //define the character set
$headers .= "User-Agent: ".$this->agent."\r\n"; //define the user agent
$headers .= "Host: ".$this->host."\r\n"; //define the host
$headers .= "Accept-encoding: gzip\r\n"; //define the gzip format encoding
$headers .= "Referer: ".$this->referer."\r\n"; //define the referer
$headers .= "Return-Path: ".contact_email ."\r\n"; //define a return path
and some more:
$headers .= "Content-Type: application/$file_type";
$headers .= "Content-Disposition: attachment; filename=$file_name.$ext";
$headers .= "Pragma: no-cache";
$headers .= "Expires: 0";
Or build up the message f.e.:
$getres=mysql_fetch_array(mysql_query("SELECT * FROM customers WHERE id='".$id."' "));
if ($_REQUEST['cd'] == 'yes'){
$body="Reseller ".$getres['company']." has just ordered ".$quantity." CDs of ".$product['description']." for a total amount of ".$total."";
} else {
$body="Reseller ".$getres['company']." has just ordered ".$product['description']." for ".$getcust['first_name']."&nbsp;".$getcust['last_name']."";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment