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

-
- phpBB Guru
- Сообщения: 16947
- Стаж: 18 лет 11 месяцев
- Откуда: Красноярск
- Благодарил (а): 549 раз
- Поблагодарили: 1700 раз
Сообщаем об ошибках phpBB 3.3.x разработчикам
Об ошибках, выявленных в работе phpBB 3.3 Proteus, сообщаем в этой теме.
Ошибками является некорректная работа ядра phpBB, подтвержденная на последней актуальной версии phpBB, требующая устранения в коде ядра, и не связанная с работой расширений, сторонних стилей оформления, неверной работой серверного оборудования или серверного софта, а также с некорректными действиями администратора.
Запросы поддержки также не размещаются в данной теме.
Ошибками является некорректная работа ядра phpBB, подтвержденная на последней актуальной версии phpBB, требующая устранения в коде ядра, и не связанная с работой расширений, сторонних стилей оформления, неверной работой серверного оборудования или серверного софта, а также с некорректными действиями администратора.
Запросы поддержки также не размещаются в данной теме.
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Не уверен, что это ошибки движка 3.3.4 при работе с PHP 8.0..., но при срабатывании системного cron в одном из расширений (отправка поздравлений) появляется ворох таких предупреждений:
Код: Выделить всё
PHP Warning: Undefined array key "user_form_salt" in ./includes/functions.php on line 1963
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "page_dir" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "page_name" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "query_string" in ./phpbb/notification/type/base.php on line 283
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
PHP Warning: Undefined array key "style_path" in ./includes/functions.php on line 3690
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
rxu, вот это расширение. Оно кривое немного было, но в целом рабочее.
Конкретно код его крона:
(также ругался в 103 строчке на пустой session_ip, но я его там пофиксил)
Конкретно код его крона:
(также ругался в 103 строчке на пустой session_ip, но я его там пофиксил)
Код: Выделить всё
<?php
/**
*
* @package E-mail on birthday
* @copyright (c) 2015 ForumHulp.com
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
namespace forumhulp\emailonbirthday\cron\task\core;
use phpbb\config\config;
use phpbb\user;
use phpbb\db\driver\driver_interface;
use phpbb\log\log;
use forumhulp\emailonbirthday\lang_manager\lang_manager;
use phpbb\notification\manager;
/**
* @ignore
*/
class birthday extends \phpbb\cron\task\base
{
protected $config;
protected $user;
protected $db;
protected $log;
protected $lang_manager;
protected $notification_manager;
/**
* Constructor.
*/
public function __construct(config $config, user $user, driver_interface $db, log $log, lang_manager $lang_manager, manager $notification_manager)
{
$this->config = $config;
$this->user = $user;
$this->db = $db;
$this->log = $log;
$this->lang_manager = $lang_manager;
$this->noti_manager = $notification_manager;
}
/**
* Runs this cron task.
*
* @return null
*/
public function run()
{
$time = $this->user->create_datetime();
$now = phpbb_gmgetdate($time->getTimestamp() + $time->getOffset());
// Display birthdays of 29th february on 28th february in non-leap-years
$leap_year_birthdays = '';
if ($now['mday'] == 28 && $now['mon'] == 2 && !$time->format('L'))
{
$leap_year_birthdays = ' OR user_birthday LIKE "' . $this->db->sql_escape(sprintf("%2d-%2d-", 29, 2)) . '%"';
}
$sql = 'SELECT user_id, username, user_email, user_lang,
YEAR(CURRENT_TIMESTAMP) - YEAR(str_to_date(user_birthday, "%d-%m-%Y")) AS age
FROM ' . USERS_TABLE . '
WHERE user_birthday <> " 0- 0- 0" AND user_birthday <> "" AND
(user_birthday LIKE "' . $this->db->sql_escape(sprintf("%2d-%2d-", $now["mday"], $now["mon"])) . '%"' . $leap_year_birthdays . ') AND
email_on_birthday + 86400 < UNIX_TIMESTAMP(now())
AND user_posts > 1
AND user_id NOT IN(SELECT ban_userid FROM ' . BANLIST_TABLE . ')'; // Siava add 2 strings
$result = $this->db->sql_query($sql);
$msg_list = array();
while ($row = $this->db->sql_fetchrow($result))
{
$msg_list[] = array(
'user_id' => $row['user_id'],
'name' => $row['username'],
'email' => $row['user_email'],
'lang' => $row['user_lang'],
'age' => $this->lang_manager->numbertext($row['age'], $row['user_lang']),
'time' => time()
);
}
if (sizeof($msg_list))
{
foreach ($msg_list as $key => $value)
{
$this->noti_manager->add_notifications('forumhulp.emailonbirthday.notification.type.birthday', array(
'user_id' => $value['user_id'],
'age' => $value['age'],
'name' => $value['name'],
'user_email' => $value['email']
));
$sql = 'UPDATE ' . USERS_TABLE . ' SET email_on_birthday = ' . time() . ' WHERE user_id = ' . $value['user_id'];
$this->db->sql_query($sql);
}
$userlist = array_map(function ($entry)
{
return $entry['name'];
}, $msg_list);
$this->log->add('admin', $this->user->data['user_id'], $this->user->data['session_ip'] ?? '', 'BIRTHDAYSEND', false, array(implode(', ', $userlist)));
}
$this->config->set('emailonbirthday_last_gc', time());
}
/**
* Returns whether this cron task can run, given current board configuration.
*
* @return bool
*/
public function is_runnable()
{
return $this->config['email_on_birthday'];
}
/**
* Returns whether this cron task should run now, because enough time
* has passed since it was last run.
*
* @return bool
*/
public function should_run()
{
return $this->config['emailonbirthday_last_gc'] < (time() - $this->config['emailonbirthday_gc']);
}
}
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB Guru
- Сообщения: 16947
- Стаж: 18 лет 11 месяцев
- Откуда: Красноярск
- Благодарил (а): 549 раз
- Поблагодарили: 1700 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Siava, все говорит за то, что при вызове менеджера уведомлений из крона объект $user либо не определен, либо не заполнен как положено (уже или еще). так что это проблема данного конкретного экста. Думаю, что если посмотреть внимательнее на его работу под PHP 7, то обнаружится, что ссылка редиректа с уведомления кривая, например, хотя ошибка и не выпадает.
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Подобное происходит при использовании системного крона и в ряде других расширений:rxu писал(а): 04.12.2021 13:35 при вызове менеджера уведомлений из крона объект $user либо не определен, либо не заполнен как положено
[beta] Connection Log
[3.1][3.2] Stop Spamer Register
То есть cron работает от гостя и без IP адреса

Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB Guru
- Сообщения: 16947
- Стаж: 18 лет 11 месяцев
- Откуда: Красноярск
- Благодарил (а): 549 раз
- Поблагодарили: 1700 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Тогда нужно проверять объект на наличие данных и при их отсутствии присваивать им какие-то значения по умолчанию, например, как это делается в ядре https://github.com/phpbb/phpbb/blob/3.3 ... s.php#L192
Хотя, не факт, что так сработает получается, что эти значения должны меняться глобально.
Либо просто проверять и отправлять уведомление только тогда, когда юзер залогинен.
Хотя, не факт, что так сработает получается, что эти значения должны меняться глобально.
Либо просто проверять и отправлять уведомление только тогда, когда юзер залогинен.
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
phpbb 3.3.4 (тестил на чистом)
Меняю настройки доп. поля "Интересы" на следующее:
Но всё равно не даёт использовать следующие разрешённые символы: _,-.
P.S>
цифры тоже не даёт.
P.S.
"Любые буквенные символы, цифры и точки" тоже работает криво.
С латинскими аналогично.
Меняю настройки доп. поля "Интересы" на следующее:
Но всё равно не даёт использовать следующие разрешённые символы: _,-.
P.S>
цифры тоже не даёт.
P.S.
"Любые буквенные символы, цифры и точки" тоже работает криво.
С латинскими аналогично.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- Модератор
- Сообщения: 979
- Стаж: 7 лет 3 месяца
- Откуда: Таллин ,Эстония
- Благодарил (а): 164 раза
- Поблагодарили: 162 раза
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Если ты не видишь проблем на форуме , но это не значить что их там нет
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
ronim, мне кажется, что эта бага и в 3.3.5 присутствует 

Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- Модератор
- Сообщения: 979
- Стаж: 7 лет 3 месяца
- Откуда: Таллин ,Эстония
- Благодарил (а): 164 раза
- Поблагодарили: 162 раза
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Siava, Вот в том и и проблема что вам кажется.Вы же не знаете результат 
тут не в обиду сказано . но нужно подтверждение

тут не в обиду сказано . но нужно подтверждение
Последний раз редактировалось ronim 06.12.2021 0:37, всего редактировалось 1 раз.
Если ты не видишь проблем на форуме , но это не значить что их там нет
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
ronim, да нормально всё) сам понимаю, что надо на последней версии проверять всегда. Днём напишу)
P.S.
В 3.3.5 аналогично.
P.S.
В 3.3.5 аналогично.
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Ещё кое-что вспомнил.. тоже тянется из версии в версию.
При использовании sphinx поисковые запросы типа:
19"
19"19
"19
выдают ошибку вида:
"19" - ищет нормально.
У себя пока сделал такой костыль, так как лучше не придумал:
phpbb/search/fulltext_sphinx.php
найти
заменить
При использовании sphinx поисковые запросы типа:
19"
19"19
"19
выдают ошибку вида:
Код: Выделить всё
Ошибка поиска: index index_phpbb_1462a65519054b7e_delta,index_phpbb_1462a65519054b7e_main: syntax error, unexpected $end near ''
У себя пока сделал такой костыль, так как лучше не придумал:
phpbb/search/fulltext_sphinx.php
найти
Код: Выделить всё
$this->search_query = str_replace('"', '"', $keywords);
Код: Выделить всё
$this->search_query = str_replace('"', '\"', $keywords);
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB Guru
- Сообщения: 16947
- Стаж: 18 лет 11 месяцев
- Откуда: Красноярск
- Благодарил (а): 549 раз
- Поблагодарили: 1700 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Дает, если прочитать внимательно описание, то пробела в списке разрешенных нет, в других правилах есть пробел, но нет знаков пунктуации, поэтомуSiava писал(а): 05.12.2021 22:17 Но всё равно не даёт использовать следующие разрешённые символы: _,-.
Тест 12345...
ни под одно правило не подходит, кроме самого первого.-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Спасибо, невнимательно прочитал

Всё равно неудобно. Спамеры используют доп.поля профиля для ссылок, так как по-умолчанию в них разрешены любые символы.
Пытаюсь ограничить, но из всех вариантов реально рабочие только "Любые" и "Любые буквенные символы, цифры и разделители", так как в остальных вариантах даже простой пробел нельзя написать.
А оставшееся "Любые буквенные символы, цифры и разделители" даже не позволяет запятую добавить. Вот например, как ещё заполнить поле Интересы, перечислить их..? Разве что использовать разделители типа пробела, квадратных скобок, плюса и минуса, да знак подчёркивания..

Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 1.4.0
- Сообщения: 35
- Стаж: 5 лет 3 месяца
- Благодарил (а): 2 раза
- Поблагодарили: 3 раза
Re: Сообщаем об ошибках phpBB 3.3.x разработчикам
Объединение тем сломалось? При нажатии на ссылку выбора темы, в которую надо перенести сообщения - редиректит на главную страницу модераторского раздела.