Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?


Начать новую тему Ответить на тему  [ Сообщений: 112 ]  Стрaница Пред.  1, 2, 3, 4, 5, 6  След.
Автор
#41  Сообщение 26.09.14, 16:18  
Прохожий

Регистрация: 19.07.2016
Сообщения: 241
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Far East писал(а):
Хак или мод такой написать достаточно сложно.
Хотя бы потому как это не просто php программинг, - это знание структуры баз и базового кода двиги phpBB3 начиная от базовых переменных и констант. Оно все в открытом виде, но полного структурированного описания нигде не видел.

там нужно перехватить момент создания темы, и аккурат перед созданием темы посчитать.

всю структуру знать не обязательно.
:bd:

для хака этого хватит

  Профиль  
  
    
#42  Сообщение 26.09.14, 16:21  
Белый и пушистый
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 4321
Откуда: ДВРФ
Благодарил (а): 93 раз.
Поблагодарили: 165 раз.
Россия
Бывший электрик писал(а):
Far East писал(а):
Хак или мод такой написать достаточно сложно.
Хотя бы потому как это не просто php программинг, - это знание структуры баз и базового кода двиги phpBB3 начиная от базовых переменных и констант. Оно все в открытом виде, но полного структурированного описания нигде не видел.

там нужно перехватить момент создания темы, и аккурат перед созданием темы посчитать.

всю структуру знать не обязательно.
:bd:

для хака этого хватит
Че-то там подобное уже встроено в движок. Попробуй.
http://www.phpbbguru.net/useful/codeboo ... tem-usage/

  Профиль  
  
    
#43  Сообщение 26.09.14, 16:29  
Старожил

Регистрация: 19.08.2014
Сообщения: 8328
Откуда: Россия
Благодарил (а): 0 раз.
Поблагодарили: 95 раз.
Россия
Forte писал(а):
Беда подкрадывается к пропагандонам, всего лишь 2-3 ветки в день, это ж сколько копипаста пропадет то :rzach:

Гы
Да, форточному тяжко придецца если лимит введут.

  Профиль  
  
    
#44  Сообщение 26.09.14, 16:35  
Завсегдатай
Аватара пользователя

Регистрация: 18.08.2014
Сообщения: 4944
Благодарил (а): 0 раз.
Поблагодарили: 38 раз.
7777777 писал(а):
Forte писал(а):
Беда подкрадывается к пропагандонам, всего лишь 2-3 ветки в день, это ж сколько копипаста пропадет то :rzach:

Гы
Да, форточному тяжко придецца если лимит введут.

Страшно страшно, аж 11 тем создал за время существования нового форума, как же мне дальше то быть, если введут ограничение?

Не, ну вы фашиствующие россиянчеки совсем сбрендили....

Мбугагага

_________________
Ты и во сне необычайна.
Твоей одежды не коснусь.
Дремлю - и за дремотой тайна,
И в тайне - ты почиешь, Русь. (с)

  Профиль  
  
    
#45  Сообщение 26.09.14, 16:44  
Прохожий
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 289
Откуда: Россия, Германия, Казахстан.
Благодарил (а): 3 раз.
Поблагодарили: 1 раз.
Россия
Три темы - это самое то что надо.

  Профиль  
  
    
#46  Сообщение 26.09.14, 17:13  
Завсегдатай
Аватара пользователя

Регистрация: 23.08.2014
Сообщения: 4399
Благодарил (а): 22 раз.
Поблагодарили: 26 раз.
Россия
а смысл такого ограничения, если оно обходится простым созданием клонов?

  Профиль  
  
    
#47  Сообщение 26.09.14, 17:17  
Старожил

Регистрация: 19.08.2014
Сообщения: 8328
Откуда: Россия
Благодарил (а): 0 раз.
Поблагодарили: 95 раз.
Россия
neon писал(а):
а смысл такого ограничения, если оно обходится простым созданием клонов?

А некоторые создатели сопливый тем настолько ёбнуты, что их под любым клоном за версту видно.
Вот таких портрь надо. На конюшне. Или в бане.

  Профиль  
  
    
#48  Сообщение 26.09.14, 17:20  
Старожил
Аватара пользователя

Регистрация: 20.08.2014
Сообщения: 6021
Благодарил (а): 90 раз.
Поблагодарили: 110 раз.
Iceland
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

этот запрос показывает кол-во топиков созданных юзверем за 24 часа, или вам надо ещё в php код засунуть?

_________________
Морозювач превозмогае телебачник.

  Профиль  
  
    
#49  Сообщение 26.09.14, 17:23  
Старожил

Регистрация: 19.08.2014
Сообщения: 8328
Откуда: Россия
Благодарил (а): 0 раз.
Поблагодарили: 95 раз.
Россия
Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

этот запрос показывает кол-во топиков созданных юзверем за 24 часа, или вам надо ещё в php код засунуть?

Засунь им ,Фима. Можешь даже и в php код . Ибо некуя бездумные темки плодить.

  Профиль  
  
    
#50  Сообщение 26.09.14, 17:29  
Завсегдатай
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 3082
Благодарил (а): 45 раз.
Поблагодарили: 137 раз.
Новороссия
Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

Не матюкайся.
Хотя FE и Бывший электрик может быть поймут - шо ты такое написал... :crazy:

_________________
Покупая по партнерской ссылке на AliExpress - поддерживаешь форум FOR-UA.INFO

  Профиль  
  
    
#51  Сообщение 26.09.14, 17:38  
Завсегдатай
Аватара пользователя

Регистрация: 23.08.2014
Сообщения: 4399
Благодарил (а): 22 раз.
Поблагодарили: 26 раз.
Россия
7777777 писал(а):
neon писал(а):
а смысл такого ограничения, если оно обходится простым созданием клонов?

А некоторые создатели сопливый тем настолько ёбнуты, что их под любым клоном за версту видно.
Вот таких портрь надо. На конюшне. Или в бане.

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

украшательство и попытки улучшения - самое паршивое. Все забывают старую истину "Лучшее - враг хорошего".

  Профиль  
  
    
#52  Сообщение 26.09.14, 17:40  
Старожил

Регистрация: 19.08.2014
Сообщения: 8328
Откуда: Россия
Благодарил (а): 0 раз.
Поблагодарили: 95 раз.
Россия
neon писал(а):
ну так я и спрашиваю смысл этого всего, если модерам все равно нужно работать?
Кто у нас больше 3-х тем в сутки создает? Не так уж и много, проще модерам взять их под контроль и делов.
А то сейчас влезем в код, добавим отсебятины, а потом не знать будем откуда косяки лезут.

украшательство и попытки улучшения - самое паршивое. Все забывают старую истину "Лучшее - враг хорошего".

Тут соглашусь.

  Профиль  
  
    
#53  Сообщение 26.09.14, 17:42  
Прохожий

Регистрация: 23.08.2014
Сообщения: 58
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Россия
https://www.phpbb.com/customise/db/mod/ ... per_forum/

  Профиль  
  
    
#54  Сообщение 26.09.14, 19:08  
Старожил
Аватара пользователя

Регистрация: 20.08.2014
Сообщения: 6021
Благодарил (а): 90 раз.
Поблагодарили: 110 раз.
Iceland
fiello писал(а):
https://www.phpbb.com/customise/db/mod/limit_post_as_count_per_forum/

судя по описанию это не то

_________________
Морозювач превозмогае телебачник.

  Профиль  
  
    
#55  Сообщение 27.09.14, 06:36  
Прохожий
Аватара пользователя

Регистрация: 24.08.2014
Сообщения: 278
Откуда: Луганск - Москва
Благодарил (а): 13 раз.
Поблагодарили: 27 раз.
Новороссия
https://www.phpbb.com/community/viewtop ... 6&t=325374 вроде то что нужно.

  Профиль  
  
    
#56  Сообщение 27.09.14, 07:31  
Белый и пушистый
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 4321
Откуда: ДВРФ
Благодарил (а): 93 раз.
Поблагодарили: 165 раз.
Россия
sanyok писал(а):
https://www.phpbb.com/community/viewtopic.php?f=16&t=325374 вроде то что нужно.
Ага. Казалось. Только это все для версии 2x. У нас 3x

  Профиль  
  
    
#57  Сообщение 27.09.14, 07:35  
Прохожий

Регистрация: 28.08.2014
Сообщения: 494
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Или так:

Найти файл bb_plugins.php и в него вставить данный код:

/* разрешается только X тем в сутки */
if($forum!=0 and $user_id>0 and $user_id!=1 and $isMod==0){
$reachedLimit=FALSE;
$timeLimit=date('Y-m-d H:i:s', time()-86400);
if($row=db_simpleSelect(0, $Tt, 'count(*)', 'topic_poster', '=', $user_id, '', '', 'topic_time', '>=', $timeLimit)){
if($row[0]>=3) $reachedLimit=TRUE;
}
if($reachedLimit) $poForums[]=$forum;
}
/* разрешается только X тем в сутки */

для этого даже не нужно никому давать доступа. Достаточно, чтобы кто-то сделал изменения, и заменить файл в форуме на новый. Уверен, что у вас епсть умельцы, но если уж очень будет нужно, то смогу помочь после воскресенья.

  Профиль  
  
    
#58  Сообщение 27.09.14, 07:44  
Старожил

Регистрация: 16.08.2014
Сообщения: 5676
Благодарил (а): 20 раз.
Поблагодарили: 111 раз.
Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

этот запрос показывает кол-во топиков созданных юзверем за 24 часа, или вам надо ещё в php код засунуть?

Принципиальная ошибочка всех, юзающих now(). :)

Из-за этого приличный оверхэд будет, если делать красиво(каждый раз при перезагрузке страницы проверять лимит для залогиненого юзера.)
Ибо now() - NON DETERMINISTIC функция, и, соответственно, результат не будет оседать в кэше mysql, вернее, будет вытесняться.

По правильному - поставить udf global user variables, и обновлять глобальную переменную по event scheduler самого mysql раз в несколько минут ,
по колхозному - завести табличку с полем now, которую обновлять раз в несколько минут по cron, и сравнивать поле topic_time с таким относительно редко меняющимся значением.

  Профиль  
  
    
#59  Сообщение 27.09.14, 07:59  
Белый и пушистый
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 4321
Откуда: ДВРФ
Благодарил (а): 93 раз.
Поблагодарили: 165 раз.
Россия
Молотов писал(а):
Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

этот запрос показывает кол-во топиков созданных юзверем за 24 часа, или вам надо ещё в php код засунуть?

Принципиальная ошибочка всех, юзающих now(). :)

Из-за этого приличный оверхэд будет, если делать красиво(каждый раз при перезагрузке страницы проверять лимит для залогиненого юзера.)
Ибо now() - NON DETERMINISTIC функция, и, соответственно, результат не будет оседать в кэше mysql, вернее, будет вытесняться.

По правильному - поставить udf global user variables, и обновлять глобальную переменную по event scheduler самого mysql раз в несколько минут ,
по колхозному - завести табличку с полем now, которую обновлять раз в несколько минут по cron, и сравнивать поле topic_time с таким относительно редко меняющимся значением.
Во-во. Нам еще лишних Queries на сеансе не хватало.

  Профиль  
  
    
#60  Сообщение 27.09.14, 10:06  
Белый и пушистый
Аватара пользователя

Регистрация: 16.08.2014
Сообщения: 4321
Откуда: ДВРФ
Благодарил (а): 93 раз.
Поблагодарили: 165 раз.
Россия
Totoro писал(а):
Найти файл bb_plugins.php и в него вставить данный код:
Дядя, Totoro. Ты дурак??? Или просто прикидываешься?

  Профиль  
  
    
Начать новую тему Ответить на тему  [ Сообщений: 112 ]  Стрaница Пред.  1, 2, 3, 4, 5, 6  След.





Рейтинг@Mail.ru яндекс.ћетрика

[ Time : 0.195s | 16 Queries | GZIP : On ]