<?PHP
/* CONSTANTS */
define("__STR_EMAIL_CREAPOMME__","
[email protected]");
define("__STR_SUBJECT_CREAPOMME__","[creapomme-form]");
define("__SENDMAIL_SUCCESS__","Email bien envoyé");
define("__SENDMAIL_ALREADY_SUCCESS__","HO! Email déjà envoyé");
define("__STR_EMAIL_ERROR__","Votre Adresse email semble éronnée");
define("__STR_SUBJECT_ERROR__","Veuillez indiquer un objet");
define("__STR_BODY_ERROR__","Veuillez remplir un message");
define("__SENDMAIL_FAILDED__","Internal Server Error");
/*
* boolean is_email(string str_email)
*/
function is_email($str_email)
{
$mask='^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$';
$str_check = ereg(
$mask,
$str_email
);
if($str_check)
return true;
return false;
}
/*
* void logfile(string str)
*/
function logfile($str)
{
$filename = 'mail.php.txt';
$fp = @fopen($filename,'a');
if($fp) {
fwrite($fp,$str);
fclose($fp);
}
}
/*
* string buidbody(void)
*/
function buidbody()
{
$mailbody = "
--------------------------------------------------------
Contact form sent by
Subject: ".$_POST['subject']."
Email: ".$_POST['from']."
--------------------------------------------------------
message:
".str_replace("\r","\n",$_POST['body'])."
--------------------------------------------------------
sender's ip: ".$_SERVER['REMOTE_ADDR']." date : ".date('d-m-Y H:m:s')."
--------------------------------------------------------
";
return $mailbody;
}
/*
* void sendmail(void)
*/
function sendmail()
{
$body = buidbody();
if ($_POST['sendstatus'] > 0)
{
$i = $_POST['sendstatus'] + 1;
//logfile("SPAM FILTER: ".date('d-m-Y H:m:s')." try : ".$i." ip : ".$_SERVER['REMOTE_ADDR']."\n");
answer(__SENDMAIL_ALREADY_SUCCESS__,$i);
} else {
if(@mail(__STR_EMAIL_CREAPOMME__,__STR_SUBJECT_CREAPOMME__,$body))
{
//logfile($body);
answer(__SENDMAIL_SUCCESS__,1);
} else {
answer(__SENDMAIL_FAILDED__);
}
}
}
/*
* void answer(string str_answer[,int state])
*/
function answer($str_answer,$state = 0)
{
echo "&form_status=".$str_answer."&email_status=".$state."&";
exit(0);
}
/*
* void receive(void)
*/
function receive()
{
if(isset($_POST['from']) && isset($_POST['subject']) && isset($_POST['body']))
{
if(!is_email( strtolower($_POST['from']) ) )
{
answer(__STR_EMAIL_ERROR__);
} else if(strlen($_POST['subject']) < 4) {
answer(__STR_SUBJECT_ERROR__);
} else if(strlen($_POST['body']) < 4) {
answer(__STR_BODY_ERROR__);
} else {
sendmail();
}
}else {
exit(0);
}
}
receive();
?>