if ($fldVal != "") { $arInd .= "-" . $fldVal; } break; } } } } } if (($fp2 = fopen($filename2, "r")) == false) { die("Can't open data file '{$filename2}'.\n"); } $regByType = array(); $currArInd = ""; $addedToRC = false; while ($inString = read_file_line($fp2)) { //Add new registrant to appropriate category list($lname, $fname) = explode(',', $inString); if ($fname == "") { //this is a heading in the file $currArInd = trim($lname); if ($arInd == $currArInd) { //This is the category the person has registered for list($regFName, $regLName) = explode(" ", $name); //Split name into components //Add new registrant's name to array $regByType[$currArInd] = $regLName . "," . $regFName; $addedToRC = true; } } else { //This is a name in the file - just add them to the array for writing back to the file
function check_banlist($logOnBan, $email) { global $errors, $scriptName, $banListFile; $notAllowed = false; $banList = array(); if ($fp = @fopen($banListFile, "r")) { while ($inString = read_file_line($fp)) { $banList[] = $inString; } fclose($fp); } if (count($banList)) { $emailFix = trim(strtolower($email)); $remoteHostFix = trim(strtolower($_SERVER['REMOTE_HOST'])); foreach ($banList as $banned) { $banFix = trim(strtolower(ereg_replace('\\.', '\\.', $banned))); if (strstr($banFix, "@")) { if (ereg('^@', $banFix)) { $banFix = ereg_replace('^@', '[@\\.]', $banFix); if ($notAllowed = ereg("{$banFix}\$", $emailFix)) { $bannedOn = $emailFix; break; } } elseif (ereg('@$', $banFix)) { if ($notAllowed = ereg("^{$banFix}", $emailFix)) { $bannedOn = $emailFix; break; } } else { if ($notAllowed = strtolower($banned) == $emailFix) { $bannedOn = $emailFix; break; } } } elseif (preg_match('/^\\d{1,3}(\\\\.\\d{1,3}){0,3}(\\/\\d{1,2})?$/', $banFix)) { if ($notAllowed = check_ip($banFix, $_SERVER['REMOTE_ADDR'])) { $bannedOn = $_SERVER['REMOTE_ADDR']; break; } if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { if ($notAllowed = check_ip($banFix, $_SERVER['HTTP_X_FORWARDED_FOR'])) { $bannedOn = $_SERVER['HTTP_X_FORWARDED_FOR']; break; } } } else { if ($notAllowed = ereg("{$banFix}\$", $remoteHostFix)) { $bannedOn = $remoteHostFix; break; } } } } if ($notAllowed) { $errors[] = "Attempt from a banned email address, host or domain! ({$bannedOn})"; if ($logOnBan) { error_log("[{$scriptName}] Banned on \"{$bannedOn}\"", 0); } } return $notAllowed; }