Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Спамеры в гостевой
 
 автор: bones   (24.08.2006 в 10:14)   письмо автору
 
 

Привет всем,
Есть такая проблема. Достают (и сильно достают) спамеры в гостевой книге сайта. Поскольку во всех них обязательно есть URL, появилась идея просто проверять $gb_text перед записью в БД и не принимать сообщения, где обнаружатся сочетания http:// или www. Подскажите пожалуйста, как это можно реализовать технически? Замучался уже банить и стирать ихние кретинские сообщения.

   
 
 автор: DDK   (24.08.2006 в 10:18)   письмо автору
 
   для: bones   (24.08.2006 в 10:14)
 

Лучше, имхо, поставить подтверждение визуального кода... и код найти "по-ядреней".

   
 
 автор: bones   (24.08.2006 в 10:38)   письмо автору
 
   для: DDK   (24.08.2006 в 10:18)
 

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

   
 
 автор: Ildark   (24.08.2006 в 10:45)   письмо автору
 
   для: bones   (24.08.2006 в 10:38)
 

Вот по этой ссылке можно посмотреть пример скрипта
http://softtime.ru/info/randomimage.php

   
 
 автор: cheops   (24.08.2006 в 11:37)   письмо автору
 
   для: bones   (24.08.2006 в 10:14)
 

Реализовать этом можно следующим образом
<?php
      
if(strpos($text"http://") !== falseexti("URL в теле письма не допускаются");
?>

   
 
 автор: bones   (24.08.2006 в 13:51)   письмо автору
 
   для: cheops   (24.08.2006 в 11:37)
 

Ildark и cheops, большое спасибо! Как раз то что доктор прописал. Надо почаще в download заглядывать :-). Пока остановлюсь на варианте cheops'а, сегодня это самое простое решение, а вот если уроды начнут маскировать ссылки тогда придется заняться визуальным кодом.
Если не трудно, подскажите, как можно указать сразу несколько параметров (чтобы проверял и на наличие http:// и на наличие www.). Вставленная в код строка у меня выглядит так:

if(strpos($gb_text, "http://") !== false) {
$error = true;
$messageStack->add('guestbook', GUESTBOOK_SPAM);
}

А также, хотя это немного не в тему, как вышеупомянутая строка должна выглядеть в javascript? Сам скрипт есть, проверяет данные формы на длину:

if (gb_text.length <= 6) {
error_message = error_message + "Текст сообщения должен быть не меньше 6 символов.";
error = 1;
}

   
 
 автор: P@Sol   (24.08.2006 в 13:58)   письмо автору
 
   для: bones   (24.08.2006 в 13:51)
 

<?
if(strpos($gb_text"http://") !== false || strpos($gb_text"www") !== false) {
$error true;
$messageStack->add('guestbook'GUESTBOOK_SPAM);
}


мне кажется это все-таки работа php нежели java...хотя наверно и там возможно

   
 
 автор: bones   (24.08.2006 в 15:08)   письмо автору
 
   для: P@Sol   (24.08.2006 в 13:58)
 

Одно другому не мешает. Спамеры-то все равно спамят на автомате, и для них будет PHP и перезагрузка страницы. А нормальный посетитель, которому вздумается вписать URL, дальше java-скрипта не пройдет, пока не поправит свое сообщение. Ему-то зачем ждать перезагрузки?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования