Не отображаются данные string на html странице

Тема в разделе "ESP8266, ESP32", создана пользователем Otto, 6 янв 2022.

  1. Otto

    Otto Нерд

    Здравствуйте, сделал скетч в Arduino IDE для Вкл./Выкл, перезагрузки ПК (что-то типа Wake-On-Line на ESP-01), всё работает как и планировал, так же сделал страницу с HTML кодом, в котором выводится разная полезная(и не очень) информация о ESP и вот тут появилась проблемка.

    Столкнулся с непонятной ситуацией, не отображаются данные из глобальных переменных String/int на HTML странице, а именно не выводится Uptime и счётчик неудачных авторизаций на WEB морде.
    P.S. Для "Uptime" использую библиотеку с Гитхаба, данные получаю в виде строки, а в другую переменную "eroorAuthoriz" пишутся кол-ва неудачных попыток авторизации как целое число.

    В Serial данные отправляются/отображаются корректно, а вот на HTML страницу с этих же переменных ни в какую не хочет.
    Переменная "String TimeUptime" отображается как пустое поле, если формируется в Loop и присваивается в глобальную переменную, а если вычисление делаю прям в строчке с объявленной глобальной переменной, то выводится в HTML нулевой отсчёт (00:00:00) и не считает дальше.
    Целочисленная переменная "eroorAuthoriz" отображается так же в виде нуля неудачных попыток и всё. Но в Serial данные постают корректные.

    Из этого стало понятно что при включении ESP, отображаются в HTML только самые первые данные присвоенные в глобальные переменные, а дальше они как бы не обновляются, хотя это не так, ведь в Serial то данные поступают.

    Может кто-то сталкивался и знает что нужно подправить. Код достаточно большой и разбит на вкладки для удобства, прикреплен во вложении.
    Ниже скриншоты для понимания проблемы и выделены те участки кода, где идёт вычисление.
    Информация.jpg Образец кода 1.png Образец кода 2.png Образец кода 3.png Образец кода 4.png
     

    Вложения:

  2. b707

    b707 Гуру

    выкиньте все лишнее из кода, оставьте только вывод строк в HTML. Если проблема не исчезнет - выкладывайте сюда. Если все будет ОК - начинайте добавлять код обратно, следя за тем, выводится ли информация. Так вы найдете причину проблемы.
    Подозреваю, что вы неверно передаете переменные из одного исходного файла в другой. Но копаться в полумегабайте исходников бесплатно - ну нафик
     
    Otto, Andrey12 и Vovka нравится это.
  3. mifar

    mifar Нерд

    Особенно uptime.h -"Библиотека для вычисления Uptime без переполнения 49 дней для функции millis()"
     
  4. Otto

    Otto Нерд

    Спасибо за совет убрать всё и постепенно добавлять, не додумался до такой простой вещи.
    Ошибку нашёл быстро, нужно было просто переместить одну строчку с глобальной переменной "String webInfo2........." в функцию "PageInfo()", которая выполняется по запросу, а не остаётся статической. И вся нужная информация стала обновляться и работать как задумал.
    Тема закрыта.