[Модуль] Погода Яндекс (yandexweather)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

srvsrvsrv
Сообщения: 29
Зарегистрирован: Пн дек 11, 2017 9:15 am
Благодарил (а): 11 раз
Поблагодарили: 9 раз

Re: [Модуль] Яндекс погода 2018

Сообщение srvsrvsrv » Чт июн 21, 2018 1:06 pm

настройки общие, кнопка "сохранить" :
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Код: Выделить всё

PHP 7.0.19-1 (cli) (built: May 11 2017 14:04:47) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.19-1, Copyright (c) 1999-2017, by Zend Technologies
Последний раз редактировалось srvsrvsrv Чт июн 21, 2018 1:19 pm, всего редактировалось 2 раза.
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 694 раза
Контактная информация:

Re: [Модуль] Яндекс погода 2018

Сообщение directman66 » Чт июн 21, 2018 1:06 pm

Скорее наоборот, strlen ожидает наличие хотябы одного параметра, но он не существует. В таком случае действительно count должен решить данную проблему. И судя по всему эта проблема возникает не только с этим модулем.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Модуль] Яндекс погода 2018

Сообщение fandaymon » Чт июн 21, 2018 1:24 pm

directman66 писал(а):
Чт июн 21, 2018 1:06 pm
Скорее наоборот, strlen ожидает наличие хотябы одного параметра, но он не существует. В таком случае действительно count должен решить данную проблему. И судя по всему эта проблема возникает не только с этим модулем.
Нет, не так

expects parameter 1 to be string, array given означает что функция ожидает получить строку (и в общем и целом если всё так как надо, то она эту строку и получает, потому что свойства объектов - строки), а получает вместо строки массив
Dmitriy Wizen
Сообщения: 12
Зарегистрирован: Чт июн 21, 2018 12:55 am
Благодарил (а): 0
Поблагодарили: 0

Re: [Модуль] Яндекс погода 2018

Сообщение Dmitriy Wizen » Чт июн 21, 2018 1:52 pm

directman66 писал(а):
Чт июн 21, 2018 1:06 pm
И судя по всему эта проблема возникает не только с этим модулем.
Теоретически может и с другими модулями возникает, но у меня в логах только вот это:
Изображение

других ошибок там нет.
Вложения
err.jpg
err.jpg (85.86 КБ) 3248 просмотров
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Модуль] Яндекс погода 2018

Сообщение fandaymon » Чт июн 21, 2018 3:16 pm

srvsrvsrv писал(а):
Чт июн 21, 2018 1:06 pm
настройки общие, кнопка "сохранить" :
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227

Код: Выделить всё

PHP 7.0.19-1 (cli) (built: May 11 2017 14:04:47) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.19-1, Copyright (c) 1999-2017, by Zend Technologies
А эта ошибка означает что запрос к SQL был неправильный и вернул не результат в виде массива, а булевое значение

Очень может быть что в этих строчках (с 252 по 255)
$cmd_rec = SQLSelectOne("update yaweather_config set value='$duuid' where parametr='DUUID'");
$cmd_rec = SQLSelectOne("update yaweather_config set value='$every' where parametr='EVERY'");
$cmd_rec = SQLSelectOne("update yaweather_config set value='$deviceid' where parametr='DEVICEID'");
$cmd_rec = SQLSelectOne("update yaweather_config set value='$forecast_day' where parametr='FORECAST_DAY'");

так как тут используется update в обёртке SQLSelectOne. Программа ждёт запись, а получает 1 - update прошёл успешно или 0 - не успешно

Для исправления надо поменять в этих строчках SqlSelectOne на SQLExec

И та же самая ошибка в строках 310, 311, 437, 438, 654, 657
За это сообщение автора fandaymon поблагодарил:
directman66 (Чт июн 21, 2018 3:22 pm)
Рейтинг: 1.16%
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 694 раза
Контактная информация:

Re: [Модуль] Яндекс погода 2018

Сообщение directman66 » Чт июн 21, 2018 3:23 pm

Спасибо, SQLSelectOne заменил на SQLSelect.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 694 раза
Контактная информация:

Re: [Модуль] Яндекс погода 2018

Сообщение directman66 » Чт июн 21, 2018 3:23 pm

У кого возникает ошибка Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227, подскажите, какие города вы запрашиваете.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
fandaymon
Сообщения: 1554
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: [Модуль] Яндекс погода 2018

Сообщение fandaymon » Чт июн 21, 2018 3:30 pm

directman66 писал(а):
Чт июн 21, 2018 3:23 pm
Спасибо, SQLSelectOne заменил на SQLSelect.
Там где в тексте запроса update или delete надо писать SQLExec
Dmitriy Wizen
Сообщения: 12
Зарегистрирован: Чт июн 21, 2018 12:55 am
Благодарил (а): 0
Поблагодарили: 0

Re: [Модуль] Яндекс погода 2018

Сообщение Dmitriy Wizen » Чт июн 21, 2018 3:36 pm

directman66 писал(а):
Чт июн 21, 2018 3:23 pm
У кого возникает ошибка Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 227, подскажите, какие города вы запрашиваете.
Москва
Dmitriy Wizen
Сообщения: 12
Зарегистрирован: Чт июн 21, 2018 12:55 am
Благодарил (а): 0
Поблагодарили: 0

Re: [Модуль] Яндекс погода 2018

Сообщение Dmitriy Wizen » Чт июн 21, 2018 3:41 pm

После последнего (только что) обновления стало:
при сохранении настроек:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/lib/mysqli.class.php on line 200
(4 раза выводится эта строка)

после "GET UPDATE" - два раза:
Warning: strlen() expects parameter 1 to be string, array given in /var/www/html/lib/caching.class.php on line 19
Последний раз редактировалось Dmitriy Wizen Чт июн 21, 2018 3:52 pm, всего редактировалось 1 раз.
Ответить