Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP разрешить определнный сайт

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


     02.09.2013    Общие вопросы по PHP    1247

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


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)

Апельсин
3

309 | 82

Апельсин - 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
5

174 | 73

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

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

Webstrannik
3

53 | 27

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
3

53 | 27

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
5

174 | 73

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

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

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

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