Posting.php
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение

-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
И еще. Можно ли подобный функционал (закрытие тем) реализовать без крона? Например, зашел пользователь в тему или просмотрел форум, и темы все закрылись, у кого стоит дата закрытия раньше текущего времени. Повесить на событие просмотра.
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
Так и реализован форумный крон (только в 3.2 появилась возможность переключать на системный)
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
Я думаю совсем без крона. Крон как я понимаю должен регулярно срабатывать каждые например 5 минут, шерстить все темы и закрывать требуемые. Не лишняя ли нагрузка?
Я думаю такой алгоритм: заходит любой пользователь в топик и (если есть поле и время закрытия) он в этот момент закрывается, если это время вышло. Какое событие срабатывает в момент просмотра-открытия топика?
Я думаю такой алгоритм: заходит любой пользователь в топик и (если есть поле и время закрытия) он в этот момент закрывается, если это время вышло. Какое событие срабатывает в момент просмотра-открытия топика?
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
Срабатывают все события, не закрытые неподходящими условиями
Нагрузка от такого будет выше, т.к. крон срабатывает время от времени и единожды, а темы смотрят постоянно и не по одному разу
Отправлено спустя 1 минуту 6 секунд:
Нагрузка от такого будет выше, т.к. крон срабатывает время от времени и единожды, а темы смотрят постоянно и не по одному разу
Отправлено спустя 1 минуту 6 секунд:
Нет (если сами не сделаете, конечно, чтобы он просматривал именно всё)
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
Действительно, не подумал. Будем пилить крон. Где все-таки почитать посмотреть как?Татьяна5 писал(а): 01.05.2018 15:46 Нагрузка от такого будет выше, т.к. крон срабатывает время от времени и единожды, а темы смотрят постоянно и не по одному разу
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
Сижу теперь и думаю.Татьяна5 писал(а): 01.05.2018 15:47 если сами не сделаете, конечно, чтобы он просматривал именно всё
1. Например у меня 1000 тем, крон каждые пять минут просматривает их все и закрывает требуемые. Можно конечно вывести номера незакрытых в отдельную таблицу и просматривать их там, чтобы не шерстить все.
2. Вариант 2 - при открытие темы идет запрос к скажем так флагу, и если он есть - тема закрывается.
Где больше нагрузка? Даже при условии к примеру тысяч пользователей и гостей. Всего один запрос плюсом к идущим и так при загрузке темы. Неужели так увеличится загрузка?
Хочется выслушать мнение.
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
Крон - не человек, он ничего не просматривает
Одна выборка из БД в 5 минут это намного лучше, чем одна выборка при каждом открытии темы каждым пользователем
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
Я правильно понял задание крона выполняется когда кто-то что-то сделал на форуме?
Отправлено спустя 4 минуты 54 секунды:
И где в настройках форумный крон или системный и в чем их плюс-минус?
Отправлено спустя 4 минуты 54 секунды:
И где в настройках форумный крон или системный и в чем их плюс-минус?
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
Форумный запускается если на форуме кто-нибудь есть (кто-то открыл любую страницу), а системный даёт большую точность по времени, но он не везде доступен
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
"Настройки сервера" (форумный там отключается, а системный настраивается на сервере)
-
- phpBB 2.0.7
- Сообщения: 567
- Стаж: 8 лет 4 месяца
- Благодарил (а): 241 раз
- Поблагодарили: 52 раза
Re: Posting.php
И наверное последний вопрос в этой теме, т.к. я уже на финишной прямой ))
Какими командами выбрать все темы форума, чтобы проверить есть ли у каждой флаг или нет? Если флаг есть передать topic_id для дальнейших действий.
Какими командами выбрать все темы форума, чтобы проверить есть ли у каждой флаг или нет? Если флаг есть передать topic_id для дальнейших действий.
-
- Поддержка
- Сообщения: 12752
- Стаж: 13 лет 8 месяцев
- Благодарил (а): 159 раз
- Поблагодарили: 2276 раз
Re: Posting.php
Все темы выбирать как раз не надо, выбирайте сразу которые с флагом (и незакрытые при этом). Через SELECT
-
- Former team member
- Сообщения: 12113
- Стаж: 18 лет 2 месяца
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 36 раз
- Поблагодарили: 1526 раз
Re: Posting.php
Какой?
Код: Выделить всё
SELECT topic_id FROM ' . TOPICS_TABLE . ' WHERE какой-то_флаг = что-то(вероятно 1)';
https://dev.mysql.com/doc/refman/8.0/en/select.html
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.