For-UA - Форум всея Великия и Малыя и Белыя России
https://for-ua.info/

Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?
https://for-ua.info/viewtopic.php?f=4&t=4250
Страница 3 из 6

Автор:  Бывший электрик [ 26.09.14, 16:18 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

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

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

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

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

Автор:  Far East [ 26.09.14, 16:21 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

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

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

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

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

Автор:  7777777 [ 26.09.14, 16:29 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Forte писал(а):
Беда подкрадывается к пропагандонам, всего лишь 2-3 ветки в день, это ж сколько копипаста пропадет то :rzach:

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

Автор:  Forte [ 26.09.14, 16:35 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

7777777 писал(а):
Forte писал(а):
Беда подкрадывается к пропагандонам, всего лишь 2-3 ветки в день, это ж сколько копипаста пропадет то :rzach:

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

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

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

Мбугагага

Автор:  Караганда [ 26.09.14, 16:44 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Три темы - это самое то что надо.

Автор:  neon [ 26.09.14, 17:13 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

а смысл такого ограничения, если оно обходится простым созданием клонов?

Автор:  7777777 [ 26.09.14, 17:17 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

neon писал(а):
а смысл такого ограничения, если оно обходится простым созданием клонов?

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

Автор:  Екатеринбуржец [ 26.09.14, 17:20 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

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

Автор:  7777777 [ 26.09.14, 17:23 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

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

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

Автор:  Скептик [ 26.09.14, 17:29 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Екатеринбуржец писал(а):
SELECT count(*) FROM `phpbb_topics` WHERE topic_poster = ИД_ЮЗВЕРЯ AND topic_time > UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 1 DAY))

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

Автор:  neon [ 26.09.14, 17:38 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

7777777 писал(а):
neon писал(а):
а смысл такого ограничения, если оно обходится простым созданием клонов?

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

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

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

Автор:  7777777 [ 26.09.14, 17:40 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

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

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

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

Автор:  fiello [ 26.09.14, 17:42 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

https://www.phpbb.com/customise/db/mod/ ... per_forum/

Автор:  Екатеринбуржец [ 26.09.14, 19:08 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

fiello писал(а):
https://www.phpbb.com/customise/db/mod/limit_post_as_count_per_forum/

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

Автор:  sanyok [ 27.09.14, 06:36 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

https://www.phpbb.com/community/viewtop ... 6&t=325374 вроде то что нужно.

Автор:  Far East [ 27.09.14, 07:31 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

sanyok писал(а):
https://www.phpbb.com/community/viewtopic.php?f=16&t=325374 вроде то что нужно.
Ага. Казалось. Только это все для версии 2x. У нас 3x

Автор:  Totoro [ 27.09.14, 07:35 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Или так:

Найти файл 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 тем в сутки */

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

Автор:  Молотов [ 27.09.14, 07:44 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Екатеринбуржец писал(а):
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 с таким относительно редко меняющимся значением.

Автор:  Far East [ 27.09.14, 07:59 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Молотов писал(а):
Екатеринбуржец писал(а):
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 на сеансе не хватало.

Автор:  Far East [ 27.09.14, 10:06 ]
Заголовок сообщения:  Re: Программисты есть среди нас? Кто поможет сделать ограничение на количество создаваемых тем?

Totoro писал(а):
Найти файл bb_plugins.php и в него вставить данный код:
Дядя, Totoro. Ты дурак??? Или просто прикидываешься?

Страница 3 из 6 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/