include_once("functions.php"); /* ############################################################################## # PLEASE DO NOT REMOVE THIS HEADER!!! # # COPYRIGHT NOTICE # # FormMail.php v4.1b # Copyright 2000,2001 Ai Graphics and Joe Lumbroso (c) All rights reserved. # Created 07/06/00 Last Modified 08/06/2001 # Joseph Lumbroso, http://www.aigraphics.com, http://www.dtheatre.com # http://www.lumbroso.com/scripts/ ############################################################################## # # This cannot and will not be inforced but I would appreciate a link back # to any of these sites: # http://www.dtheatre.com # http://www.aigraphics.com # http://www.lumbroso.com/scripts/ # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR # OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, # ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR # OTHER DEALINGS IN THE SOFTWARE. # ############################################################################## */ // formmail version (for debugging mostly) $version = "4.1b"; // referers.. domains/ips that you will allow forms to // reside on. #$referers = array ('bestmidi.com','www.bestmidi.com'); #if ($email == "") $email = "noreply@blindbargains.com"; if ($to == "mm") $recipient = "matt@blindbargains.com"; elseif ($to == "jm") $recipient == "jj@blindbargains.com"; else $recipient="bargains@blindbargains.com"; // banned emails, these will be email addresses of people // who are blocked from using the script (requested) $banlist = array ('*@somedomain.com', 'user@domain.com', 'etc@domains.com'); // our mighty error function.. function form_print_error($reason,$type = 0) { global $version; build_body($title, $bgcolor, $text_color, $link_color, $vlink_color, $alink_color, $style_sheet); // for missing required data if ($type == "missing") { ?> The form was not submitted for the following reasons:
}
echo "
\n";
echo "This form is powered by Jack's Formmail.php $version!\n\n";
exit;
}
// function to check the banlist
// suggested by a whole lot of people.. Thanks
function check_banlist($banlist, $email) {
if (count($banlist)) {
$allow = true;
foreach($banlist as $banned) {
$temp = explode("@", $banned);
if ($temp[0] == "*") {
$temp2 = explode("@", $email);
if (trim(strtolower($temp2[1])) == trim(strtolower($temp[1])))
$allow = false;
} else {
if (trim(strtolower($email)) == trim(strtolower($banned)))
$allow = false;
}
}
}
if (!$allow) {
form_print_error("You are using from a banned email address.");
}
}
// function to check the referer for security reasons.
// contributed by some one who's name got lost.. Thanks
// goes out to him any way.
function check_referer($referers) {
if (count($referers)) {
$found = false;
$temp = explode("/",getenv("HTTP_REFERER"));
$referer = $temp[2];
for ($x=0; $x < count($referers); $x++) {
if (eregi ($referers[$x], $referer)) {
$found = true;
}
}
if (!getenv("HTTP_REFERER"))
$found = false;
if (!$found){
form_print_error("You are coming from an unauthorized domain.");
error_log("[FormMail.php] Illegal Referer. (".getenv("HTTP_REFERER").")", 0);
}
return $found;
} else {
return true; // not a good idea, if empty, it will allow it.
}
}
if ($referers)
check_referer($referers);
if ($banlist)
check_banlist($banlist, $email);
// parse the form and create the content string which we will send
function parse_form($array) {
// build reserved keyword array
$reserved_keys[] = "MAX_FILE_SIZE";
$reserved_keys[] = "required";
$reserved_keys[] = "redirect";
$reserved_keys[] = "email";
$reserved_keys[] = "require";
$reserved_keys[] = "path_to_file";
$reserved_keys[] = "recipient";
$reserved_keys[] = "subjectprefix";
$reserved_keys[] = "subject";
$reserved_keys[] = "bgcolor";
$reserved_keys[] = "text_color";
$reserved_keys[] = "link_color";
$reserved_keys[] = "vlink_color";
$reserved_keys[] = "alink_color";
$reserved_keys[] = "title";
$reserved_keys[] = "missing_fields_redirect";
$reserved_keys[] = "env_report";
if (count($array)) {
while (list($key, $val) = each($array)) {
// exclude reserved keywords
$reserved_violation = 0;
for ($ri=0; $ri
\n";
echo "This form is powered by Jack's Formmail.php $version!\n\n";
exit;
}
// <---------- THE END ----------> //