Я сделал такя вот так делаю сейчас)
void page1()
{
String s;
BUILD_BEGIN(s);
add.THEME(GP_DARK);
add.FORM_BEGIN("/update1");
add.SUBMIT("Страница 2");
add.FORM_END();
BUILD_END();
}
void page2()
{
String s;
BUILD_BEGIN(s);
add.THEME(GP_LIGHT);
add.FORM_BEGIN("/update2");
add.SUBMIT("Страница 1");
add.FORM_END();
BUILD_END();
}
А если переименовать update1?вот и первый баг, по адресу local/update у меня открывалась страница обновления, теперь там загружается страница портала)
// разобрать строковое время HH:MM:SS в структуру
GPtime decodeTime(char* str) {
GPtime t = (GPtime){0,0,0};
uint8_t len = strlen(str);
if (len == 5 || len == 8) {
str[2] = str[5] = '\0';
t.hour = atoi(str);
t.minute = atoi(str+3);
t.second = atoi(str+6);
str[2] = str[5] = ':';
}
return t;
}
void PAGE_BEGIN() {
*_gp_sptr += F("<!DOCTYPE HTML><html><head>\n"
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n"
"<meta charset=\"utf-8\"></head><body>\n");
}
Добавление *_gp_sptr += F("<meta http-equiv=\"refresh\" content=\"0\">"); в конструктор заставляет страницу перезагружаться через указанное время, т.е. страница в постоянной перезагрузке. Может я что-то не так сделал? Может есть способ как-то менять это значение. Напр заранее выставить огромное число, а при необходимости менять на нуль?@4LDIY, где страницу строишь, можно страницу блоками, а можно через *_gp_sptr += рисовать, как без портала.
Это я понял что там нуль и каждые нуль секунд страница перегружается, мне нужно инициировать перезагрузку страницы тогда, когда я хочу.@4LDIY, интервал перезагрузки в секундах указывается.
String cl;
BUILD_BEGIN(cl);
add.THEME(GP_LIGHT);
add.PAGE_BEGIN();
add.PAGE_BLOCK_BEGIN();
cl += F("<script type=\"application/javascript\" language=\"javascript\"");
cl += F("setTimeout(function(){location.reload();},1000);");
cl += F("</script>");
add.PAGE_BLOCK_END();
add.PAGE_END();
BUILD_END();