анти-спам

1. shurik (04.10.2009 / 18:12)
как это реализовать?
например для гостевой

2. Удаленный (04.10.2009 / 18:26)
Функция str_replace знаешь для чего используется? Короче пишешь все запрещенные тексты в эту функцию,если хочешь чтоб она заменалась чем то,то тогда пиши переменную которую будет заменять запрещенные слова в эту функцию,и обрабатывай её через эту функцию. Я где то писал раньше на форуме человеку полный код,сейчас структуру анти забыл,если не разберёшься завтра напишу ;)

3. shurik (04.10.2009 / 19:20)
да я не про это, короче нужен таймер чтобы сообщения писать только 1 раз в 15 минут

4. Удаленный (04.10.2009 / 19:21)
<?
session_start () ;
$time_sec = 60 ;
if ( $_SESSION['spam'] < time () )
{
$_SESSION['spam'] = time () + $time_sec ;
echo 'сообщение добавлено' ;
}
else
{
echo 'Разрешается добавлять собщения раз в '.$time_sec.' секунд! Не части!' ;
}
?>


5. shurik (04.10.2009 / 19:31)
это получается что можно закрыть-открыть браузер и заного написать

6. Удаленный (04.10.2009 / 20:48)
Да. Или используй куки.

7. Удаленный (04.10.2009 / 20:52)
А воще как для меня ето нужно воизбежание двух разового нажатие на кнопку и тому подобное. да и врядли комуто захочится выходить заходить штобы не подождать короткое время а если авторизованый то можно писать в профиль.

8. Димон (04.10.2009 / 21:33)
1. Если для гостевой, то используй код с картинки

9. Удаленный (04.10.2009 / 21:41)
Вот антиспам по ip:
<?
$ip = $REMOTE_ADDR ;
$time_spam = 60 ;
$file_anti_spam = file ('antispam.dat') ;
for ( $i = 0 ; $i < count ($file_anti_spam) ; ++$i )
{
$arr_anti_spam = explode('|', $file_anti_spam[$i]) ;
if ( $arr_anti_spam[0] == $ip )
{
$time_anti_spam = $arr_anti_spam[1] ;
unset ($file_anti_spam[$i]) ;
}
else
{
$texp_anti_spam .= $file_anti_spam[$i].'
' ;
}
}
if ( $time_anti_spam > time () )
{
echo 'еще не прошло '.$time_spam.' sec.' ;
}
else
{
echo 'ok' ;
$text_anti_spam = $ip.'|'.time () + $time_spam.'
'.$text_anti_spam ;
//3апись
$fp = fopen ('antispam.dat','w+') ;
fputs ($fp, $text_anti_spam) ;
fclose ($fp) ;
}
?>


10. Вантуз-мен (04.10.2009 / 22:06)
5. SHuRiК [Off] (Сегодня / 19:31)
это получается что можно закрыть-открыть браузер и заного написать
код из 4 поста можно переделать, например так
при входе на сайт записывать в сессию время входа,
и при написании сообщения проверять если юзер на сайте к примеру уже 30 сек, то сообщение добавляется и время в сессии обнуляется, то есть в любом случае необходимо ждать определенное время, если открыть закрыть браузер время пойдет с нуля

11. Удаленный (04.10.2009 / 22:12)
10, тогда может возникнуть такая ситуация: юзер только зашел на сайт и хочет написать, а ему "Не части"
Хотя думаю такие ситуации будут большой редкостью.

12. Вантуз-мен (04.10.2009 / 22:17)
ну тогда остается писать в файл или базу отдельно

13. KingNLO (04.10.2009 / 23:05)
Вы же тут о спаме говорите, а не о флуде)

14. Удаленный (05.10.2009 / 00:12)
У меня в голове почемуто крутилось антифлуд. И афтор в 5 сообщении ничего не сказал, а наоборот подтвердил. А если так то сдесь уже посложнее если спамеры используют курл.

15. shurik (05.10.2009 / 07:15)
а ссесиями я еще не очень дружу

16. shurik (05.10.2009 / 09:30)
все сделал, спасибо 4 посту

URL: https://visavi.net/topics/1354