// echo $_SERVER['HTTP_REFERER']; // jos kutsutaan admin-lomakkeen kautta, unohdetaan suosiolla koko spämmitsekkaus resursseja syömästä: if ($_POST['admin'] != "true") { if (!(eregi("ovaali", $_SERVER['HTTP_REFERER']) || eregi("ltaria", $_SERVER['HTTP_REFERER'])) ) { parse_str($_SERVER['QUERY_STRING'],$muuttujat); $humppa = $muuttujat['a66']; $ohjattu = $muuttujat['redirect']; if (!($ohjattu==1)) { if ($humppa!="a5") { header ("Location: http://ovaali.org/Altaria/guestbook/?redirect=1"); exit(); } } } // rakenne: $a63="$a61|$a31|$a59|$a33|$a34|$a35|$a36|$a37|$a38|$a39|$HTTP_USER_AGENT||"; // $nro|ip |pvm |nimi|email|URL |desc|loc|msg |icq | browser |reply?| $syotetty_email = $_POST['a34']; // == email $syotetty_url = $_POST['a35']; // == url $syotetty_urlkuvaus = $_POST['a36']; // == urlin kuvaus // merkiston tarkistus, Ѐ ӹ = dec ja Ѐ - ӹ hex $syotetty_location = $_POST['a37']; $syotetty_viesti = $_POST['a38']; $tutkittava_stringi = $syotetty_viesti . " " . $syotetty_location . " " . $syotetty_urlkuvaus; $tutkittava_stringi = mb_convert_encoding($tutkittava_stringi,"UTF-8","Windows-1251"); $encoded = mb_convert_encoding($tutkittava_stringi,"HTML-ENTITIES","auto"); // $encoded = mb_convert_encoding($tutkittava_stringi,"HTML-ENTITIES","auto"); // tarkistetaan yritetäänkö käyttää venäläisiä merkkejä -> merkki spämmistä //deleted: eregi("g[2-7]", $encoded) || if (eregi(" [5-9][0-9]", $encoded) || eregi("[2-5][0-9]", $encoded) || eregi("[7-9][0-9]", $encoded) || eregi("[0-6][0-9]", $encoded)) { echo "
POST not allowed.
"; exit(); } // voitaisiin myös tarkistaa ettei ole jo valmiiksi enkoodattuja ts. Џ tmv. .. /* OBSOLETE // tarkistetaan ettei ole käytetty Windows-1251-merkistöä tmv. // muutetaan siis syöte UTF-8:ksi ja sitten UTF-8 -> HTML-entiteetit kuten ekassa $encoded2 = mb_convert_encoding($tutkittava_stringi,"UTF-8","auto"); if (eregi(" [3-9][0-9]", $encoded2) || eregi("[0-9][0-9]", $encoded2) || eregi("[0-6][0-9]", $encoded2) ) { echo "POST not allowed.
"; exit(); } $encoded2 = mb_convert_encoding($encoded2,"HTML-ENTITIES","auto"); if (eregi(" [3-9][0-9]", $encoded2) || eregi("[0-9][0-9]", $encoded2) || eregi("[0-6][0-9]", $encoded2)) { echo "POST not allowed.
"; exit(); } // ja vielä yksi testi, jossa pyöräytetään eri tavalla, auttanee(?) eri merkistöihin: $convmap = array(0x0, 0x2FFFF, 0, 0xFFFF); $encoded3 = mb_encode_numericentity($tutkittava_stringi, $convmap, 'UTF-8'); if (eregi(" [3-9][0-9]", $encoded3) || eregi("[0-9][0-9]", $encoded3) || eregi("[0-6][0-9]", $encoded3)) { echo "POST not allowed.
"; exit(); } */ // tarkistetaan yritetäänkö käyttää [url]- ja -tageja viestissä -> merkki spämmistä if (eregi("POST not allowed.
Reason: links not allowed in this guestbook. Please try again after removing the link(s) in your message.