|
|
|
|
|
|
| |
| <?php
//select the email address' from your db
//NOTE: This will expose your users email addresses to address harvesters potentially leading to spam
// A better method is simply to post the user name and then do a look up on the email address
// but that is a another story
if (isset($_POST['submit']))
{
//submit button pushed call the send_email function
send_email();
}else{
//nothing has been pushed so show the form
show_form();
}//end if
/**************************************************************************
send_mail function
**************************************************************************/
function send_email()
{
//default values for elements
$subject = '';
$email = '';
$message = '';
$your_name = '';
$your_email = '';
$err_msg = '';
$headers = '';
//get the values from the form handle any errors
if(isset($_POST['subject']))
{
$subject = $_POST['subject'];
}
if(isset($_POST['email']))
{
$email = $_POST['email'];
}
if(isset($_POST['message']))
{
$message = $_POST['message'];
}
if(isset($_POST['your_name']))
{
$your_name = $_POST['your_name'];
}
if(isset($_POST['your_email']))
{
$your_email = $_POST['your_email'];
}
//validate the emails for correctness
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
$err_msg .= "Email is not valid. Please re-enter it<br />";
$email = '';
}
//sender's email
if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $your_email)) {
$err_msg .= "Your email is not valid. Please re-enter it<br />";
$your_email = '';
}
//check to see if the other elements have values
if(empty($message))
{
$err_msg .= "No message set. Please enter a message.<br />";
}
if(empty($subject))
{
$err_msg .= "No subject set. Please enter a subject.<br />";
}
if(empty($your_name))
{
$err_msg .= "No sender name set. Please enter a your name.<br />";
}
//check the err_msg to see if there are any messages
if ($err_msg != ''){
//there is an error so build the data into a pipe delimited string and pass it back to the form
$data = "$email|$subject|$message|$your_email|$your_name";
show_form($data,$err_msg);
die();
}//end if
//send the email
//build the headers
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "X-Priority: 1\n";
$headers .= "X-MSMail-Priority: High\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "From: \"".$your_name."\" <".$your_email.">\n";
if (!mail($email, $subject, $message, $headers))
{
echo "Email failed!";
}else{
echo "<script language='javascript'>alert('Mail sent');</script>";
}//end if
}//end function
/**************************************************************************
show_form function
**************************************************************************/
function show_form($data='',$msg='')
{
//show the form for the email
//the $data='' and $msg='' constructs allow for no information to be passed to the function
//set defaults for function
$subject = '';
$email = '';
$message = '';
$your_name = '';
$your_email = '';
//explode the string passed back from the send_mail function if there is an error
if (($data !="" )&&($msg != ""))
{
$elements = explode("|",$data);
$email = $elements[0];
$subject = $elements[1];
$message = $elements[2];
$your_email = $elements[3];
$your_name = $elements[4];
}//end if
/*
optional where clauses could include:
1. only active users
2. check to see if the user wants to allow contact from others on the site
3. only new users (signed up within a certain date)
*/
$sql = "select email_address from tablename [optional where clause]";
//your db connection stuff goes here
$result = mysql_query($sql);
echo "<html><head><title>Email A Friend</title></head><body>";
echo "<table width='100%' cellpadding='0' cellspacing='0'>";
echo "<form name='email' action='".$_SERVER['PHP_SELF']."' method='post'>";
echo "<tr><td colspan='2' align='center'><h2>Email A Friend</h2></td></tr>";
echo "<tr><td colspan='2' align='center'> </td></tr>";
echo "<tr><td colspan='2' align='center' style='color:red; font-weight:bold;'>$msg</td></tr>";
//produce the email drop down
if (($result)&&(mysql_num_rows($result)>0)){
//produce the drop down list
echo "<tr><td width='50%' align='right'>Email Address: </td><td><select name='emails'>"; //optionally add MULTIPLE to allow sending to multiple addresses
while ($rows = mysql_fetch_array($result)){
echo "<option>".$rows['email_address']."</option>";
}//end while
echo "</select></td></tr>";
}else{
//if there is a problem, have the user manually enter the email address
echo "<tr><td colspan='2' align='center' style='color:red; font-weight:bold;'><br />Currently unable to locate email addresses. There maybe a problem with the database.</td></tr>";
echo "<tr><td colspan='2'> </td></tr>";
echo "<tr><td colspan='2' align='center' style='color:red; font-weight:bold;'>Please enter the email address manually</td></tr>";
echo "<tr><td width='40%' align='right'>Email Address: </td><td><input type='text' name='email' size='50' value='$email'></td></tr>";
}//end if
echo "<tr><td align='right'>Subject: </td> <td><input type='text' name='subject' size='50' value='$subject'></td></tr>";
echo "<tr><td align='right' valign='top'>Message: </td> <td><textarea name='message' cols='25' rows='10'>$message</textarea></td></tr>";
echo "<tr><td align='right'>Your name: </td> <td><input type='text' name='your_name' cols='25' rows='10' value='$your_name' ></td></tr>";
echo "<tr><td align='right'>Your Email: </td> <td><input type='text' name='your_email' cols='25' rows='10' value='$your_email'></td></tr>";
echo "<tr><td colspan='2' align='center'><input type='submit' value='Send Email' name='submit'><input type='reset' value='Reset'></td></tr>";
echo "</form></table></body>";
}//end function
?> | | |
|
| YellowPages Content Grabber (PHP5 +) Categories : PHP, PHP Classes, Regexps, Databases, MySQL | | | This program allows you to upload an ODBC ressource - i.e. an MS-Access database to a MySQL server. Categories : Databases, MySQL, Complete Programs, PHP, Databases | | | bookmarker - PHP, PHPLIB, MySQL WWW based bookmark manager Categories : MySQL, PHP, MySQL, Complete Programs, Databases | | | Accepts a database & hostname from a user and then HTTP username and password. Uses this to connect to a MySQL database. Produces a form based on the tables it finds there to allow the user to do SELECTs, INSERTs, and DELETEs. Categories : Databases, PHP, MySQL, Complete Programs | | | phpAds, a complete banner and ad management system with detailled tracking and stats. Categories : MySQL, Complete Programs, Ecommerce, PHP, Databases | | | Point and Click Interface ala MS Access for creating SQL statements. Categories : MySQL, Complete Programs, General SQL, PHP, Databases | | | Message of the Day - Random Message (Needs MySQL!) Categories : Databases, HTML and PHP, PHP, MySQL | | | Alternating background color for HTML table rows Categories : PHP, Databases, MySQL, HTML and PHP | | | color codes for positive and negative numbers Categories : PHP, MySQL, Databases, HTML | | | A very simple way to build and do a hierarchical html categories browser without javascript , just using html php and mySql
Categories : HTML and PHP, Databases, Algorithms, PHP, MySQL | | | Tropicalm Genetree Family (MySQL based family tree) Categories : PHP, Interfaces, Databases, MySQL, Complete Programs | | | mysql_escape_string Categories : PHP, MySQL, Databases, Strings | | | Automatically printing the contents of an sql table in MySQL. Categories : MySQL, PHP, HTML and PHP, Databases | | | Email a user with out exposing email address Categories : PHP, Databases, MySQL, Email | | | Authorize Me! An authentication script. Categories : MySQL, Databases, Authentication, PHP | |
|
|
|