ругань шла как раз на строчку - if (preg... ))
у меня получилось со следующим кодом:
function preg_addslashes ($code)
{
return preg_replace("/([^A-z0-9_-]|[\\\[\]])/", "\\\\\\1", $code);
}
if (preg_match ("/".preg_addslashes($KSereg[0])."/", "$PHP_SELF"))
теперь работает.