koderman, нахрена вы ставите два обработчика? Одного не хватает, или вы с if-else не знакомы?
По умолчанию это и.
http://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование
if (! is_page(19)) {действие 2}
Искать шеллы и латать дыры через которых идет взлом. Сменить пароли.
С помощью htaccess
блин, не Remote_Addr а Referer, забыл поменять.
SetEnvIf Referer ^http://(www\.)?badsite\.ru realremoteaddr
RewriteCond %{HTTP_HOST} ^([a-z-]+)\.site\.ru
RewriteRule (.*) view.php?name=%1 [L,QSA]
Не на уровне бд, а на уровне php где есть связь с бд.
Выглядеть будет примерно следующим образом
if(preg_match('#^/news/(?:index\.php)?\?news=(\d+)#', $_SERVER['REQUEST_URI'], $out)){ $id = intval($out[1]); //$seo_url get seo url from db $url = '/news/'.$seo_url.'/'; header('Location: '.$url, false, 301); exit; }
eto-novost динамическая часть которая htaccess'у неизвестна, а значит для каждой ссылке нужно писать отдельное правило редиректа.
А в данном случае проще было бы сделать на уровне скриптов, где есть доступ к бд или к названию чпу.