Posted 31 октябряOct 31 comment_212786 Спамит ошибкой:TypeError: iterator_to_array(): Argument #1 ($iterator) must be of type Traversable|array, int given (0)#0 /applications/core/modules/front/members/profile.php(375): iterator_to_array(0)#1 /system/Dispatcher/Controller.php(139): IPS\core\modules\front\members\profile->manage()#2 /applications/core/modules/front/members/profile.php(130): IPS\Dispatcher\Controller->execute()#3 /system/Dispatcher/Dispatcher.php(169): IPS\core\modules\front\members\profile->execute()#4 /index.php(16): IPS\Dispatcher->run()#5 {main}Обратная трассировка#0 /init.php(827): IPS\Log::log('TypeError: iter...', 'uncaught_except...')#1 [internal function]: IPS\IPS::exceptionHandler(Object(TypeError))#2 {main}Помогите пожалуйста.
31 октябряOct 31 Author comment_212789 6 минут назад, Respected said:Что там за код на этой строке?Если ты про 375 строку в Profile.php:/* Get followers */ $followers = iterator_to_array( $this->member->followers( ( Member::loggedIn()->isAdmin() OR Member::loggedIn()->member_id === $this->member->member_id ) ? \IPS\Content::FOLLOW_PUBLIC + \IPS\Content::FOLLOW_ANONYMOUS : \IPS\Content::FOLLOW_PUBLIC, array( 'immediate', 'daily', 'weekly', 'none' ), NULL, array( 0, 12 ) ) );
31 октябряOct 31 comment_212791 Когда и где возникает ошибка... есть ли у вас какие-либо изменения в шаблоне? Какая у вас версия PHP... Я использую 8.3, и у меня нет такой проблемы
31 октябряOct 31 Author comment_212792 2 минуты назад, Silence said:Когда и где возникает ошибка... есть ли у вас какие-либо изменения в шаблоне? Какая у вас версия PHP... Я использую 8.3, и у меня нет такой проблемыВ том то и дело, не могу понять когда возникает ошибка. Ошибка вызывается гостем, URL страницы, на которой возникла ошибка Недоступно. Я копаю в сторону страницы с подписчиками, есть предположение, но не факт.Изменений в шаблоне никаких, все из коробки.PHP 8.3Я в приватном режиме, как гость, зашел на страницу подписчиков пользователя - ошибка не появилась.Я зашел как гость на страницу подписчиков темы, ошибка не появилась.Я зашел как гость на страницу подписчиков тега, ошибка не появилась.НашелЕсли пользователь запретил на себя подписываться, то если зайти в его профиль, ты получаешь ошибку.Да, именно так
31 октябряOct 31 comment_212793 10 минут назад, ryancoolround said:Ошибка вызывается гостем, URL страницы, на которой возникла ошибка Недоступноизвини но я не понял...как ошибка выходит у гостя...дайте ссылку на url
31 октябряOct 31 Author comment_212794 1 минуту назад, Silence said:извини но я не понял...как ошибка выходит у гостя...дайте ссылку на urlПросто если войти на страницу пользователя, который запретил на себя подписываться, уже не важно, Гость ты или админ, возникает ошибка. Пример таких профилей:https://ip-gamers.net/profile/483-vast/https://ip-gamers.net/profile/44-drlex/
31 октябряOct 31 comment_212795 Эта ошибка, я думаю, возникает после обновления.... попробуйте разблокировать пользователя, а затем снова заблокировать или отписаться от него.
31 октябряOct 31 Author comment_212796 Так же, если в админке, зайти в раздел Статистика>Пользователи>Подписка>Подписчики мы получаем:TypeError: IPS\Patterns\ActiveRecord::constructFromData(): Argument #1 ($data) must be of type array, null given, called in /static/templates/core_admin_stats.php on line 1029 and defined in /var/www/fastuser/data/www/ip-gamers.net/system/Patterns/ActiveRecord.php:242Stack trace:#0 /static/templates/core_admin_stats.php(1029): IPS\Patterns\ActiveRecord::constructFromData(NULL)#1 /system/Theme/SandboxedTemplate.php(68): IPS\Theme\class_core_admin_stats->topFollow(Object(IPS\Db\Select), '\n\n\n\t\n\t<ul class...', Array, 35, 'follow_rel_id', 'followers')#2 /applications/core/modules/admin/stats/follow.php(120): IPS\Theme\SandboxedTemplate->__call('topFollow', Array)#3 /system/Dispatcher/Controller.php(139): IPS\core\modules\admin\stats\follow->manage()#4 /applications/core/modules/admin/stats/follow.php(59): IPS\Dispatcher\Controller->execute()#5 /system/Dispatcher/Dispatcher.php(169): IPS\core\modules\admin\stats\follow->execute()#6 /admin/index.php(15): IPS\Dispatcher->run()#7 {main}Может это связано…
31 октябряOct 31 Author comment_212797 Заменил это:/* Get followers */ $followers = iterator_to_array( $this->member->followers( ( Member::loggedIn()->isAdmin() OR Member::loggedIn()->member_id === $this->member->member_id ) ? \IPS\Content::FOLLOW_PUBLIC + \IPS\Content::FOLLOW_ANONYMOUS : \IPS\Content::FOLLOW_PUBLIC, array( 'immediate', 'daily', 'weekly', 'none' ), NULL, array( 0, 12 ) ) );На это:/* Get followers */ $followersResult = $this->member->followers( (Member::loggedIn()->isAdmin() OR Member::loggedIn()->member_id === $this->member->member_id) ? \IPS\Content::FOLLOW_PUBLIC + \IPS\Content::FOLLOW_ANONYMOUS : \IPS\Content::FOLLOW_PUBLIC, array('immediate', 'daily', 'weekly', 'none'), NULL, array(0, 12) ); if (is_iterable($followersResult)) { $followers = iterator_to_array($followersResult); } else { $followers = []; }Смог зайти в профили, на которые запрещено подписываться.
31 октябряOct 31 comment_212799 12 минут назад, ryancoolround said:Смог зайти в профили, на которые запрещено подписываться.MSQL :UPDATE core_members SET temp_ban = NULL;Он удалит всех забаненных пользователей
31 октябряOct 31 Author comment_212800 1 минуту назад, Silence said:MSQL :Он удалит всех забаненных пользователейИзвини, я возможно не понял, а причем тут забаненные пользователи?
31 октябряOct 31 comment_212801 Вот я и узнал.... какие пользователи создают проблему...?ignore users?
31 октябряOct 31 Author comment_212802 2 минуты назад, Silence said:Вот я и узнал.... какие пользователи создают проблему...?ignore users?Ошибка возникнет на страницах профилей пользователей, которые сделали так:
31 октябряOct 31 comment_212803 ACP > Пользователи > Выберите пользователя > Изменить предпочтения > Разрешить подписываться на профиль? > Включать … и все работает...Это ошибка IC5... я попробовал на локальном сервере и, как и вы, та же проблема
31 октябряOct 31 Author comment_212804 1 минуту назад, Silence said:ACP > Пользователи > Выберите пользователя > Изменить предпочтения > Разрешить подписываться на профиль? > Включать … и все работает...Об этом костыле я подумал сразу, в начале темы, но в том то и дело, этот костыль простите за выражение, шлет куда подальше пользователя, который запретил на себя подписываться.
31 октябряOct 31 comment_212805 4 минуты назад, ryancoolround said:Об этом костыле я подумал сразу, в начале темы, но в том то и дело, этот костыль простите за выражение, шлет куда подальше пользователя, который запретил на себя подписываться.попробую найти команду для этого
31 октябряOct 31 comment_212807 В \IPS\Member есть функция followersCount(), можно ее для проверки задействовать вместо создания переменной и проверкой на iterable. Не проверял.
31 октябряOct 31 comment_212808 2 часа назад, ryancoolround said:Ошибка возникнет на страницах профилей пользователей, которые сделали так:Удали из шаблона этот пункт) в сл версиях может пофиксят
31 октябряOct 31 comment_212809 6 минут назад, aLEX49566 said:Удали из шаблона этот пункт) в сл версиях может пофиксятЯ только что обновился до бета-версии 3, но проблема все еще существует...
1 ноябряNov 1 comment_212902 18 часов назад, ryancoolround said:Об этом костыле я подумал сразу, в начале темы, но в том то и дело, этот костыль простите за выражение, шлет куда подальше пользователя, который запретил на себя подписываться.У меня лично с телефона (айфона), не получается к тебе зайти, через браузер сафари именно
1 ноябряNov 1 Author comment_212917 2 часа назад, aLEX49566 said:У меня лично с телефона (айфона), не получается к тебе зайти, через браузер сафари именноЗа последнюю неделю ты второй, кто это говорит. Safari не пропускает на мой сайт, это было и до обновления. И я без понятия в чем дело.
1 ноябряNov 1 comment_212918 Только что, ryancoolround said:За последнюю неделю ты второй, кто это говорит. Safari не пропускает на мой сайт, это было и до обновления. И я без понятия в чем дело.До обновления я заходил спокойно)
1 ноябряNov 1 Author comment_212919 5 минут назад, aLEX49566 said:До обновления я заходил спокойно)Я сейчас достал свой седьмой iPhone из шкафа, зашел, проблем никаких.Перейдите в раздел «Настройки» > «Приложения» > Safari > «Дополнительно».Включение JavaScript.Это включено?
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.