Dateigrösse: 5.17 kb
<?php
/*** Einfache Browserweiche: msie on windows or not ***/
$browser = strtolower(@$_SERVER['HTTP_USER_AGENT']);
$browser = strstr($browser, "msie") && strstr($browser, "win") ? true : false;
/*** callback isMSIE: returns msie version - else 0/false ***/
function isMSIE() {
$version = 0;
$ua = strtolower(@$_SERVER['HTTP_USER_AGENT']);
if(strstr($ua,'msie'))
{
$temp = split('msie',$ua);
$version = floatval($temp[1]);
return $version;
}
}
/*** security check function: only a-z 0-9 , _ - and whitespace allowed ***/
function _cleanInput ($str)
{
/*** removes anything but 0-9,a-z,-_ ***/
return preg_replace("/[^0-9a-z\-_,]+/i", "", $str);
}
/*** callback _quoteSmart for string and array ***/
function _quoteSmart ($value)
{
if (is_array ($value))
{
return array_map('_quoteSmart', $value);
}
else
{
if (get_magic_quotes_gpc())
{
$value = stripslashes ($value);
}
if ($value == '')
{
$value = 'NULL';
}
if (!is_numeric($value) || $value[0] == '0')
{
$value = "'" . mysql_real_escape_string($value) . "'";
}
return $value;
}
}
function _filterData ($value)
{
if (get_magic_quotes_gpc())
{
$value = stripslashes($value);
}
$value = str_replace("javascript", "", $value);
$value = str_replace("location", "", $value);
$value = str_replace("DELETE", "", $value);
$value = str_replace("UPDATE", "", $value);
$value = str_replace("SELECT", "", $value);
$value = str_replace("INSERT", "", $value);
$value = str_replace("WHERE", "", $value);
$value = str_replace("LIKE", "", $value);
$value = trim($value);
$value = strip_tags($value);
return $value;
}
function checkEmail($email, $domainCheck = false)
{
if (preg_match('/^[a-zA-Z0-9\._-]+\@(\[?)[a-z0-9\-\.]+\.([a-z]{2,4}|museum|[0-9]{1,3})(\]?)$/', strtolower(trim($email))))
{
if ($domainCheck && function_exists('checkdnsrr'))
{
list (, $domain) = explode('@', $email);
if (checkdnsrr($domain, 'MX') || checkdnsrr($domain, 'A'))
{
return true;
}
return false;
}
return true;
}
return false;
}
//---------------------------- Email Test inkl TLD-Check --------------------
// gibt true aus, wenn Mail-Adresse formal richtig ist und die TLD existiert
function teste_email($test) {
if(check_tld($test) == false) {
return false;
} else{
return (preg_match('/^[a-zA-Z0-9\._-]+\@(\[?)[a-z0-9\-\.]+\.([a-z]{2,4}|museum|[0-9]{1,3})(\]?)$/', strtolower(trim($test))));
}
}
// Wird in obiger Funktionen aufgerufen:
function check_tld($mailadresse) {
$mailadresse = strtolower($mailadresse);
// Liste (fast?) aller TLDs;
$arrTLD = array("aero","biz","com","coop","edu","gov","info","int","mil","museum","name","net","org","pro","ac","ad","ae","af","ag","ai","al","am","an","ao","aq","ar","as","at","au","aw","az","ba","bb","bd","be","bf","bg","bh","bi","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","cr","cs","cu","cv","cx","cy","cz","de","dj","dk","dm","do","dz","ec","ee","eg","eh","er","es","et","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","io","iq","ir","is","it","je","jm","jo","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","mg","mh","mk","ml","mm","mn","mo","mp","mq","mr","ms","mt","mu","mv","mw","mx","my","mz","na","nc","ne","nf","ng","ni","nl","no","np","nr","nu","nz","om","pa","pe","pf","pg","ph","pk","pl","pm","pn","pr","ps","pt","pw","py","qa","re","ro","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","st","su","sv","sy","sz","tc","td","tf","tg","th","tj","tk","tm","tn","to","tp","tr","tt","tv","tw","tz","ua","ug","uk","um","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","ye","yt","yu","za","zm","zr","zw");
$posAt = strpos($mailadresse, "@");
$posLastDot = strrpos($mailadresse, ".");
// sind mindestens 2 Zeichen vor dem @ ?
// sind zwischen dem letzten Punkt (der die TLD einleitet) und dem @ mindestens 2 Zeichen ?
if($posAt < 2 || ($posAt + 3) > $posLastDot) {
return false;
}
$tld = substr($mailadresse, ($posLastDot+1), strlen($mailadresse));
return (in_array($tld, $arrTLD));
}
/****************************************
* pear error reporting function *
****************************************/
function bearbeite_pear_fehler($error_obj)
{
if (get_class($error_obj) == 'db_error')
{
print "Datenbank-Fehler:<br>\n";
}
else
{
print "Sonstiger PEAR-Fehler:<br>\n";
}
die ($error_obj->getMessage()."\n<br>".$error_obj->getDebugInfo());
}
?>