[ MilošV @ 15.11.2004. 07:55 ] @
Cao :)
Na jednom prilicno posjecenom (i ozbiljnom) sajtu imam problem sa statistikom posjecenosti -"navadili" su mi se neki botovi kojima su "referer" sajtovi sa vrlo-vrlo hardcore sadrzajem...
Tako je, tokom ovog vikenda npr. bilo par hiljada takvih "posjeta" i moja stranica za statistiku je jutros davala informaciju da je "Najvise posjetilaca doslo sa sajtova: ...lolita-fuck... ; ...gangbang-rape... "
Uff...
Za prvu pomoc sam (prostim php kodom) banovao adresne opsege
168.143.113.xxx
213.194.110.xxx
12.161.205.xxx
ali mi to i ne izgleda kao neko "normalno" i pozeljno rjesenje...

Sto sad?

Hvala
Milos
[ MilošV @ 16.11.2004. 12:44 ] @
Zdravo, Milose :)
Nakon identicnog problema, napisao sam funkciju koja izgleda otprilike ovako:
Code:

function pocisti_referere()
{
$zabranjena_rijec=array("lolita", "fuck", "blackjack", "gangbang", "ecardica", "pussy");

foreach($zabranjena_rijec as $rijec)
    {
    $sql='UPDATE `ime_tabele` SET  REF=NULL WHERE REF LIKE"%'.$rijec.'%"';
    if(!mysql_query($sql))
        echo 'Greska u ciscenju: '.mysql_error(); 
    }
}

Funkciju pozivam tokom "ocitavanja" brojaca posjeta, tacnije (da nebi previse & precesto usporavala) samo kad je broj djeljiv sa 50...

HTH
Milos



-------
UPDATE:
U medjuvremenu se namnozilo laznih referera toliko da je gornja funkcija postala neupotrebljiva tj. prespora, pa sam sve 'nabio' u jedan sql upit:
Code:

function zabranjeni_ref() 
{
$zabranjene_rijeci=array("lolita", "dirty", "homeunix", "photo", "free", "fuck", "boobs", 
"boobies", "incest", "blackjack", "gangbang", "ecardica", "naked", "mature", "women", 
"woman", "scat", "picture", "movie");

$sql='UPDATE `ime_tabele` SET REF=NULL WHERE REF LIKE"%'.$zabranjene_rijeci[0].'%"';
for($i=1; $i<count($zabranjene_rijeci); $i++)
    {
    $sql=$sql.' OR REF LIKE"%'.$zabranjene_rijeci[$i].'%"';
    }
    
if(!mysql_query($sql))
        echo 'Greska: '.mysql_error(); 
    
}