Чтение RSS каналов

Форум

Открыть Ответить

Запрет ссылок в комментариях

0

0
1
17.05.2010 11:19:39

Знатоки Слаеда помогите переделать хак "запрет ссылок в комметариях".
В своё время кто-то (спасибо ему) подсказал решение по запрету испльзования ссылок в комментариях, выглядит это так в файле comments.php

function SaveComments($cid, $postname, $comment) {<br /> global $prefix, $db, $user, $userinfo, $module_name, $anonpost;<br /> require_once(&quot;config/config_comments.php&quot;);<br /> $e = explode(&quot; &quot;, $comment);<br /> for ($a = 0; $a &lt; sizeof($e); $a++) $o = strlen($e[$a]);<br /> $stop = &quot;&quot;;<br /> if ($comment == &quot;&quot;) $stop = &quot;&quot;._CERROR1.&quot;&quot;;<br /> if ($o &gt; $comletter) $stop = &quot;&quot;._CERROR2.&quot;&quot;;<br /> //###################################--Запрет ссылок в коментах<br /> $check = preg_replace(&quot;/http:/&quot;,&quot;&quot;,$comment); <br /> if ($comment != $check) $stop = &quot;Уважаемые пользователи, размещение ссылок в комментариях запрещено в целях борьбы со спам-ссылками!&quot;;<br /> //###################################--Запрет ссылок в коментах<br /> if ((!is_user($user) &amp;&amp; $postname == &quot;&quot;) || (!is_user($user) &amp;&amp; $anonpost == 0)) $stop = &quot;&quot;._CERROR3.&quot;&quot;;<br /> //Начало кода &quot;Проверка имени Гостя&quot;<br /> <br /> //Если пришел Гость<br /> if (!is_user($user)) {<br /> <br /> //Обнуляем переменную<br /> $stop_name = &quot;&quot;;<br /> <br /> //Проверяем, есть ли имя, написанное при комментарии в таблицах пользователей и админов<br /> $stop_name .= list($stop_name1) = $db-&gt;sql_fetchrow( $db-&gt;sql_query(&quot;SELECT user_id FROM &quot;.$prefix.&quot;_users WHERE user_name = &#039;$postname&#039; &quot;) );<br /> $stop_name .= list($stop_name1) = $db-&gt;sql_fetchrow( $db-&gt;sql_query(&quot;SELECT user_id FROM &quot;.$prefix.&quot;_users_temp WHERE user_name = &#039;$postname&#039; &quot;) );<br /> $stop_name .= list($stop_name1) = $db-&gt;sql_fetchrow( $db-&gt;sql_query(&quot;SELECT id FROM &quot;.$prefix.&quot;_admins WHERE name = &#039;$postname&#039; &quot;) );<br /> <br /> //Если есть совпадения, то выводим сообщение об ошибке.<br /> if ($stop_name != &quot;&quot;) {<br /> $stop = &quot;Ошибка! &lt;br&gt;Имя $postname используется зарегистрированным пользователем. &lt;br&gt;&lt;br&gt;Если Вы зарегистрированный пользователь, &lt;a href=&#092;&quot;index.php&#063;name=Account&#092;&quot;&gt;войдите&lt;/a&gt; под своим Login&#039;ом.&quot;;<br /> }<br /> }<br /> <br /> //Конец кода &quot;Проверка имени Гостя&quot;<br /> if (captcha_check(1)) $stop = &quot;&quot;._SECCODEINCOR.&quot;&quot;;

Подскажите решение чтоб всё-таки администратор и пользоватетели находящиеся в определённой группе смогли добавлять ссылки в комментариях. Если по группам очень сложно, то хотя бы разрешить администратору.
Версия - Slaed 2.5 Lite
Спасибо.



Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 4
Сервер: Сервер в интернете
4.08

4.08
2
17.05.2010 12:43:5317.05.2010 12:44:26

//###################################--Запрет ссылок в коментах
if (!is_admin())
{

$check = preg_replace("/http:/","",$comment);
if ($comment != $check) $stop = "Уважаемые пользователи, размещение ссылок в комментариях запрещено в целях борьбы со спам-ссылками!";
}

//###################################--Запрет ссылок в коментах

3.91

3.91
3
17.05.2010 15:20:57

sam07, Нужно проверку на внутрение ссылки делать.

А еще если левая ссылка вместо "Уважаемые пользователи, размещение ссылок в комментариях запрещено в целях борьбы со спам-ссылками!" написать ссылку на три русские буквы Смайл - 06

3.74

3.74
4
17.05.2010 15:23:21

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



Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 4
Сервер: Сервер в интернете
4.08

4.08
5
17.05.2010 15:29:48

вместо

is_admin()


надо

is_admin($admin)

3.74

3.74
6
17.05.2010 15:51:26

ra55551, И такой код тоже не сработал

//###################################--Запрет ссылок в коментах<br /> if (!is_admin($admin))<br /> {<br /> $check = preg_replace(&quot;/http:/&quot;,&quot;&quot;,$comment); <br /> if ($comment != $check) $stop = &quot;Уважаемые пользователи, размещение ссылок в комментариях запрещено в целях борьбы со спамом!&quot;;<br /> }<br /> //###################################--Запрет ссылок в коментах<br />

Может как то по другому?



Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 4
Сервер: Сервер в интернете
4.08

4.08
7
17.05.2010 18:34:44

ra55551, да это и так понятно.
Есть код, есть вопрос, есть быстрый ответ

3.91

3.91
8
17.05.2010 20:29:09

gruz, завтра гляну в чем косяк.

3.74

3.74
9
17.05.2010 20:44:33

ra55551, Спасибо, подождём...



Версия системы: SLAED CMS 2.6 Lite
Версия PHP: PHP 4
Сервер: Сервер в интернете
4.08

4.08
10
18.05.2010 12:00:47

В global добавить ,$admin

после

if ((!is_user($user) &amp;&amp; $postname == &quot;&quot;) || (!is_user($user) &amp;&amp; $anonpost == 0)) $stop = &quot;&quot;._CERROR3.&quot;&quot;;


Вставить

if (!is_admin($admin)){<br /> if (eregi(&quot;http://&quot;,$comment)) {<br /> $stop = &quot;Уважаемые пользователи, размещение ссылок в комментариях запрещено в целях борьбы со спам-ссылками!&quot;;<br /> }}

3.74

3.74
Открыть Ответить
Хотите опробовать SLAED CMS в действии?

Технологии

PHP MySQL HTML 5 CSS 3 jQuery jQuery UI

Контакты

  • D-49179, Deutschland
    Ostercappeln, Im Siek 6
  • +49 176 61966679

  • https://slaed.net
Идеи и предложения
Обратная связь