Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы по PHP » разрешить определнный сайт

разрешить определнный сайт


     02.09.2013    Все вопросы » Общие вопросы по PHP    2339

вопрос
имеется хак защиты от добавления ссылок в комменты


if( preg_match ("/href|url|http|www|.ru|.com|.net|.info|.org/i", $_POST['comments']) || preg_match ("/href|url|http|www|.ru|.com|.net|.info|.org/i", $_POST['name'])){
     $stop[] = "ссылки в комментариях запрещены";
     $CN_HALT = TRUE;
}


данных хак запрещается добавлять в комменты ссылки на сторонние ресурсы
подскажите как сделать, чтоб ссылки своего сайта добавлялись, а на другие источник блокировал

Ответа пока нет


5 комментариев

Апельсин
Юзер

Апельсин - 4 сентября 2013 19:08 -

Попробуй немного изменить такой код

if( $member_id['user_group'] > 2){
if (preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments']) || preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['name']))
{
$stop[] = "Извините, публиковать ссылки в комментариях запрещено!";
$CN_HALT = TRUE;
}}


Если поставить > 1 ,то ссылки смогут оставлять Админы только, а если > 3 , то ссылки смогут оставлять Админины, Главные редакторы и Журналисты.

249893
Юзер

249893 - 4 сентября 2013 19:25 -

Апельсин,
а нет вариантов чтоб, пропускал мой сайт вид site.ru, а другие блокировал

Webstrannik
Юзер

Webstrannik - 6 сентября 2013 04:02 -



if (preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments'])) {
    if (!preg_match('#mysite.ru#i', $_POST['comments'])) {
        $stop[] = "Ошибка - сторонняя ссылка в тексте!<br />Внимание, <b>публиковать ссылки</b> на сторонние сайты <b>кроме нашего</b>,<br />в тексте комментариев запрещено!";
        $CN_HALT = TRUE;
    }
}


вместо mysite.ru - свой домен
* на здоровье

Webstrannik
Юзер

Webstrannik - 6 сентября 2013 04:15 -

более уневерсальное решение

if (preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments'])) {
    $my_domen = $_SERVER["HTTP_HOST"];
    if (!preg_match("#{$my_domen}#i", $_POST['comments'])) {
        $stop[] = "Ошибка - сторонняя ссылка в тексте!<br />Внимание, <b>публиковать ссылки</b> на сторонние сайты <b>кроме нашего</b>,<br />в тексте комментариев запрещено!";
        $CN_HALT = TRUE;
    }
}

249893
Юзер

249893 - 6 сентября 2013 19:26 -

спасибо, то что надо

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх