• Страница 1 из 1
  • 1
Модератор форума: JonMagon  
Скрипт на запрет ссылок.
Chesterfield5017
Сообщений: 243
Репутация: 10

Сообщение # 1 | 06:32:17
Помогите переделать скрипт для запрета на ввод ссылок.

<script>
$(function(){$('#message').keyup(function(){
sergey=$(this).val().toLowerCase(),spout='http://,url,.ru,.com,.net,.tk,.ucoz,www,.ua,.tv,.info,.org,.su,.ру,.су,.ком,.инфо,//'.split(',');
for(litvinov=0;litvinov<spout.length;litvinov++){if(sergey.search(spout[litvinov])!= -1){$(this).val(sergey.replace(spout[litvinov],'[Запрещено]'));
return true;}}});});
</script>

Этот скрипт для запрета ссылок в коментарриях. А мне нужно на страницу добавления материала. Модуль доска объявлений. И в какое место нужно его вставлять? Так как этот я вставлял сразу после BODY.

Добавлено (15 Дек 2013, 06:32:17)
---------------------------------------------
Нашел данный скрипт, если кому нужно могу скинуть.


Miss_Esq
Сообщений: 13859
Репутация: 4159
Уровень замечаний:

Сообщение # 2 | 09:23:51
Chesterfield5017, не такой ли ??

Код
document.getElementById('addcBut').setAttribute('onclick', 'check()');  
var list = /<a href|http:|.www|.ru|.com|.org|.net|.biz|.info|.ua/igm;  
function check() {mes = document.getElementById('message').value; if (mes.search(list)>-1) {document.getElementById('addcBut').setAttribute('type', 'button')} else {document.getElementById('addcBut').setAttribute('type', 'submit')}}

Accident96
Сообщений: 20
Репутация: 0

Сообщение # 3 | 08:18:15




Надоели спам комментарии, не несущие смысла и кучей внешних ссылок? Тогда этот скрипт поможет вам запретить ссылки в комментариях, а если немного доработать его то можно и антимат подключить.

Работа скрипта заключается в том, что он находит в тексте части ссылок такие как префикс http:// или доменные зоны .ua,.tv,.info,.org,.su,.ру,.су,.ком,.инфо и т.д. Добавлять их в скрипт можно бесконечно. Распознав из выше перечисленных, скрипт заменяет их на слово [Запрещено](тож можно заменить) тем самым затирая ссылку.

Установка:
В форму добавления комментария ставим код:

Код
<script>   
   $(function(){$('#message').keyup(function(){   
   sergey=$(this).val().toLowerCase(),spout='http://,url,.ru,.com,.net,.tk,.ucoz,www,.ua,.tv,.info,.org,.su,.ру,.су,.ком,.инфо,//'.split(',');   
   for(litvinov=0;litvinov<spout.length;litvinov++){if(sergey.search(spout[litvinov])!= -1){$(this).val(sergey.replace(spout[litvinov],'[Запрещено]'));   
   return true;}}});});   
   </script>
Amnistik
Сообщений: 53
Репутация: 1

Сообщение # 4 | 19:37:43
у меня этот скрипт почемуто не работает в комментариях(! ставлю в форму добавления комментариев но не какой реакции!

Код
<div style="padding: 7px;">  
  <font color="#ff0000"><div class="commError" id="eMessage" align="center"></div></font>  
  <div class="clr"></div>  
  <?if($USER_LOGGED_IN$)?>  
  <div class="bbeditor" style="float:left">  
  <span id="b_b" onclick="bbomCode('b')">  
  <img src="/combb/images/b.png" alt="b" title="Полужирный">  
  </span>  
  <span id="b_i" onclick="bbomCode('i')">  
  <img src="/combb/images/i.png" alt="i" title="Наклонный текст">  
  </span>  
  <span id="b_u" onclick="bbomCode('u')">  
  <img src="/combb/images/u.png" alt="u" title="Подчеркнутый текст">  
  </span>  
  <span id="b_s" onclick="bbomCode('s')">  
  <img src="/combb/images/s.png" alt="s" title="Зачеркнутый текст">  
  </span>  
  <img class="bbspacer" src="/combb/images/brkspace.png" alt="">  
  <span id="b_img" onclick="novi4ok_img()">  
  <img src="/combb/images/img.png" alt="m" title="Вставить Изображение">  
  </span>  
  <span id="b_img" onclick="novi4ok_url()">  
  <img src="/combb/images/link_add.png" alt="" title="Вставить Ссылку">  
  </span>  
  <span id="b_img" onclick="bbomCode('code')">  
  <img src="/combb/images/script_add.png" alt="" title="Вставить Код">  
  </span>  
  <img class="bbspacer" src="/combb/images/brkspace.png" alt="">  
  <span id="b_left" onclick="bbomCode('l')">  
  <img src="/combb/images/l.png" alt="" title="Выравнивание по левому краю">  
  </span>  
  <span id="b_center" onclick="bbomCode('c')">  
  <img src="/combb/images/c.png" alt="" title="По центру">  
  </span>  
  <span id="b_right" onclick="bbomCode('r')">  
  <img src="/combb/images/r.png" alt="" title="Выравнивание по правому краю">  
  </span>  
  <img class="bbspacer" src="/combb/images/brkspace.png" alt="">  
  <span id="b_emo" onclick="openLayerB('Sml',0,'/index/35-1-0','Полный список смайлов',270,250);return false;">  
  <img src="/combb/images/emo.png" alt="" title="Вставка смайликов">  
  </span>  
  <span id="b_email" onclick="novi4ok_email()"><img src="/combb/images/email.png" alt="" title="Вставить Email"></span>  
  <span id="b_color" onclick="viewzvet()">  
  <img src="/combb/images/color.png" alt="" title="Выбор цвета">  
  </span>  
  <img class="bbspacer" src="/combb/images/brkspace.png" alt="">  
  <span id="b_hide" onclick="bbomCode('hide')">  
  <img src="/combb/images/hide.png" alt="" title="Скрытый текст">  
  </span>  
  <span id="b_quote" onclick="bbomCode('quote')">  
  <img src="/combb/images/quote.png" alt="" title="Вставка цитаты">  
  </span>  
  <span id="b_spoiler" onclick="bbomCode('spoiler')">  
  <img src="/combb/images/spoiler.png" alt="" title="Спойлер">  
  </span>  
  <img class="bbspacer" src="/combb/images/brkspace.png" alt="">  
  <span id="b_clear" title="Очистить">  
  <input type="image" src="/combb/images/clear.png" onclick="this.form.reset();return false;">  
  </span>  
  <span id="b_pravila" onclick="new _uWnd('commadd','Правила Добавления Комментария',300,200,{align:'left',min:0,shadow:1,header:1,max:0,resize:0},'<b>Запрещено:</b><br><span id=plp>Развязывать разборки (для этого есть ЛС)</span><br><span id=plp>Добавлять спам, рекламу флуд..</span><br><span id=plp>Оскорбление администрации</span><br><span id=plp>Часто писать с вкл. Caps Lock</span><b><Br><Br>Ссылки ставим под спойлер<Br></b>');" title="Правила">  
  <img src="/combb/images/pravilo.png" alt="">  
  </span>  
  </div>  
  <?else?>  
  <Table>  
  <tr><td width="15%" class="commTd1" nowrap>Имя *:</td><td class="commTd2"><input class="commFl" type="text" name="name" value="$NAME$" size="30" maxlength="60"></td></tr>  
  <tr><td class="commTd1">Email:</td><td class="commTd2"><input class="commFl" type="text" name="email" value="$EMAIL$" size="30" maxlength="60"></td></tr>  
  </table>  
  <?endif?>  
  <div class="clr"></div>  
  <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>  
  <td>  
  <textarea name="message" id="message" class="komm_messaq" style="max-width: 453px;width:453px;height:160px; font-family:verdana;padding: 2px 0px 0px 2px;margin:0px; font-size:11px; border:1px solid #E0E0E0;">$MESSAGE$</textarea>  
  </td>  
  </tr>  
  </tbody></table>  
  <table><tbody>  
  <?if($SUBSCRIBE$)?><tr width="100%" align="left"><td>Подписка: $SUBSCRIBE$</td></tr><?endif?>  
  </tbody>  
  </table>  
  <?if($SECURITY_CODE$)?>  
  <Table width="100%">  
  <tbody><tr width="100%"><td class="commTd1" width="60px">Код *:</td><td class="commTd2" align="left" width="89%">$SECURITY_CODE$</td></tr></tbody>  
  </table><?endif?>  
  <Table><tbody>  
  <tr>  
  <td colspan="2">  
  <input onclick="doAddComments();return false;" name="submit" value="Отправить" type="submit" class="sendn manFlSbm" /></td>  
  </tr>  
  </tbody></table>  
  </div>  
  <script>  
  setInterval(function() {  
  if ($('body').find('.myWinSuccess').filter(':contains("Комментарий успешно добавлен")') != -1) {  
  $('body').find('.myWinSuccess').filter(':contains("Комментарий успешно добавлен")').html('<div style="padding:2px;"><div class="winaddcomm"><b>Ваш Комментарий</b> успешно добавлен</div></div>');  
  }  
  }, 10);  
  setInterval(function() {  
  if ($('body').find('.myWinError').filter(':contains("Не заполнено поле "Комментарий"")') != -1) {  
  $('body').find('.myWinError').filter(':contains("Не заполнено поле "Комментарий"")').html('<div style="padding:2px;"><div class="erroraddcomm"><b>Не заполнен</b> текст комментария</div></div>');  
  }  
  }, 10);  
  </script>  
  <script type="text/javascript" src="/combb/js/zvet.js"></script>  
  <script type="text/javascript" src="/combb/js/comm.js"></script>  
  <link type="text/css" rel="StyleSheet" href="/combb/combb.css">
<script>  
$(function(){$('#message').keyup(function(){  
sergey=$(this).val().toLowerCase(),spout='http://,url,.ru,.com,.net,.tk,.ucoz,www,.ua,.tv,.info,.org,.su,.ру,.су,.ком,.инфо,//'.split(',');
for(litvinov=0;litvinov<spout.length;litvinov++){if(sergey.search(spout[litvinov])!= -1){$(this).val(sergey.replace(spout[litvinov],'[Запрещено]'));  
return true;}}});});  
</script>
Goodmind
Сообщений: 80
Репутация: 18

Сообщение # 5 | 10:24:20
В этом скрипте закомментирована важная строка, без нее не будет работать
Код
// '.split(',')
сотрите //
Stariy
Сообщений: 4
Репутация: 0

Сообщение # 6 | 23:48:32
Скрипт антиспама утром работал а потом перестал, что я сделал не знаю... Подскажите кто может.

Код
<table border="0" width="100%" cellspacing="1" cellpadding="2" class="commTable">
<tr><td class="commTd2" colspan="2">$ERROR$</td></tr>
<?if(!$USER_LOGGED_IN$)?>
<tr><td width="15%" class="commTd1" nowrap>Имя *:</td><td class="commTd2"><input class="commFl" type="text" name="name" value="$NAME$" size="30" maxlength="60"></td></tr>
<tr><td class="commTd1">Email:</td><td class="commTd2"><input class="commFl" type="text" name="email" value="$EMAIL$" size="30" maxlength="60"></td></tr>
<?endif?>
<tr><td class="commTd2" colspan="2"><div style="padding-bottom:2px">$BBCODES$</div><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td valign="top"><textarea class="commFl" style="height:135px;" rows="8" name="message" id="message" cols="50">$MESSAGE$</textarea></td><?if($SMILES$)?><td width="5%" valign="top" align="center" valign="top" style="padding-left:3px;">$SMILES$</td><?endif?></tr></table></td></tr>
<?if($MODULE_ID$=='shop')?><tr class="commTd2" id="showAddonsFields"><td colspan="2" nowrap=1><a href="javascript://" onclick="$(this).parent().parent().hide().next().show().next().show()">Указать плюсы и минусы</a></td></tr>
<tr class="commTd2" style="display:none;" id="hideAddonsFields"><td colspan="2"><a href="javascript://" onclick="$(this).parent().parent().prev().show().next().hide().next().hide()">Скрыть дополнительные поля</a></td></tr>
<tr class="commTd2" style="display:none;"><td colspan="2"><table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr><td><label>Плюсы:</label></td></tr>
<tr><td valign="top"><textarea class="prosFl" rows="3" name="pros" id="pros" cols="93"></textarea></td></tr>
<tr><td><label>Минусы:</label></td></tr>
<tr><td valign="top"><textarea class="consFl" rows="3" name="cons" id="cons" cols="93"></textarea></td></tr>
</table></td></tr><?endif?>
<?if($SUBSCRIBE$)?><tr><td width="15%" class="commTd1" nowrap>Подписка:</td><td class="commTd2">$SUBSCRIBE$</td></tr><?endif?>
<?if($SECURITY_CODE$)?><tr><td class="commTd1" nowrap>Код *:</td><td class="commTd2">$SECURITY_CODE$</td></tr><?endif?>
<tr><td class="commTd2" colspan="2" align="center"><input type="submit" class="commSbmFl" id="addcBut" name="submit" value="- Добавить комментарий -"></td></tr></table>
<script>  
$(function(){$('#message').keyup(function(){  
   sergey=$(this).val().toLowerCase(),spout='http://,url,.ru,.com,.net,.tk,.ucoz,www,.ua,.tv,.info,.org,.su,.ру,.су,.ком,.инфо,'.split(',');  
   for(litvinov=0;litvinov<spout.length;litvinov++){if(sergey.search(spout[litvinov])!= -1){$(this).val(sergey.replace(spout[litvinov],'[вырезано]'));  
return true;}}});});  
</script>

Добавлено (03 Мар 2014, 23:46:01)
---------------------------------------------
Не использовать визуальный редактор комментариев: поставил глаку и скрипт заработал, но кнопки убогие и не красивые. А галку убираю не хрена не пашет скрипт .. мистика .

Добавлено (03 Мар 2014, 23:48:32)
---------------------------------------------
Может есть способ заставить работать скрипт, с красивым дизайном добавление комментариев ?


WWW.UNIVERSE.UCOZ.COM - Наша Вселенная, всегда самая свежая информация о космонавтике,и нашей вселенной!
BulgProperty
Сообщений: 1
Репутация: 0

Сообщение # 7 | 17:53:15
Извините за мой плохой русский. Етот скрипт не всегда будет работать. Если с мыши с правы бутон ползватель вжберет "paste" скрипт не будет работать

Добавлено (27 Фев 2019, 17:57:49)
---------------------------------------------
Примерно етот подходить:
 <script>
$(function (){
$('textarea').bind("change keyup",function(){
var re=/(http)|(www)|(https)/;
if (this.value.search(re) != -1) { 
alert("You are not allowed to put links in the fields!");
$('#captcha, #send').attr('disabled',true);
} else {
$('#captcha, #send').removeAttr('disabled');
};
});
});
</script>
#captcha - ето id на поле капча
#send - ето id на бутон
в <head>; надо поставите ето  <script src="http://code.jquery.com/jquery-latest.js"></script>

  • Страница 1 из 1
  • 1
Поиск: