logo elektroda
logo elektroda
X
logo elektroda

ESP32, web server: Setting Polish diacritical marks in page code

powerT 783 4
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
  • #1 19270485
    powerT
    Level 9  
    Hello,
    I'm not going to paste all the sources of the project because there is too much, I'm just looking for a solution : how to set to display Polish tails ?
    ESP32, web server: Setting Polish diacritical marks in page code

    The code generating the web page looks like this.

    File page_glowna.h

    
    #include "structure.h"
    
    extern String  Przekaznik[8];
    
    String getPage()
    {
      String page = "<html lang='pl'><head><meta http-equiv='refresh' content='60' name='viewport' content='width=device-width, initial-scale=1'/>";
      page += "<link rel='stylesheet' href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css'><script src='https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js'></script><script src='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js'></script>";
      page += "<title>E-Home Monitoring System</title></head><body>";
      page += "<div class='container-fluid'>";
      page +=   "<div class='row'>";
      page +=     "<div class='col-md-12'>";
      page +=       "<h1>E-Home Web Server</h1>";
      page +=       "<h3>Stacja pogodowa</h3>";
      page +=       "<ul class='nav nav-pills'>";
      
      page +=         "<li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           pogoda.temperatura;
      page +=           "</span> Temperatura</a>";
      
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           pogoda.wilgotnosc;
      page +=           "</span> Wilgotnosc</a>";
      
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           pogoda.cisnienie;
      page +=           "</span> Cisnienie atmosferyczne</a></li>";
    
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           pogoda.wiatr;
      page +=           "</span> Predkosc wiatru</a></li>";
    
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           pogoda.zachmurzenie;
      page +=           "</span> Zachmurzenie</a></li>";
    
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           czas.wschod_slonca;
      page +=           "</span> Wschod slonca</a></li>";
    
      page +=         "</li><li class='active'>";
      page +=           "<a href='#'> <span class='badge pull-right'>";
      page +=           czas.zachod_slonca;
      page +=           "</span> Zachod slonca</a></li>";
      
      page +=       "</ul>";
      
      page +=       "<table class='table'>";  
      page +=         "<thead><tr><th>Dostawca</th><th>Pomiar</th><th>Wartość</th><th>Poprzednia wartość</th></tr></thead>"; 
      page +=         "<tbody>";  
      page +=           "<tr><td>openwearhermap.org</td><td>Temperatura</td><td>"; // temperatura
      page +=             pogoda.temperatura;
      page +=             "&deg;C</td><td>";
      page +=             "-</td></tr>";
      page +=           "<tr class='active'><td>NET</td><td>Wilgotnosc</td><td>"; //wilgotnosc
      page +=             pogoda.wilgotnosc;
      page +=             "%</td><td>";
      page +=             "-</td></tr>";
      page +=           "<tr><td>NET</td><td>Cisnienie atmosferyczne</td><td>"; // cisnienie
      page +=             pogoda.cisnienie;
      page +=             "mbar</td><td>";
      page +=             "-</td></tr>";
      page +=       "</tbody></table>";
      
      page +=       "<h3>PRZEKAZNIKI</h3>";
      
      page +=       "<div class='row'>";
      
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D0 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[0];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D0' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D0' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
      
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D1 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[1];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D1' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D1' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
      
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D2 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[2];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D2' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D2' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
      
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D3 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[3];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D3' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D3' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
    
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D4 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[4];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D4' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D4' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
    
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D5 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[5];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D5' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D5' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
    
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D6 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[6];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D6' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D6' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
    
      page +=         "<div class='col-md-4'><h4 class ='text-left'>D7 ";
      page +=           "<span class='badge'>";
      page +=           Przekaznik[7];
      page +=         "</span></h4></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D7' value='1' class='btn btn-success btn-lg'>ON</button></form></div>";
      page +=         "<div class='col-md-4'><form action='/' method='POST'><button type='button submit' name='D7' value='0' class='btn btn-danger btn-lg'>OFF</button></form></div>";
      
      page +=       "</div>";
      page +=     "<br><p><a href='https://arudino-code.blogspot.com/</p>";
      page += "</div></div></div>";
      page += "</body></html>";
      return page;
    }
    
    .
  • ADVERTISEMENT
  • Helpful post
    #2 19270518
    sylweksylwina
    Moderator of Computers service
    And why make life so complicated for yourself?
    Put the page code as files in LittleFS memory and not in program code.
  • ADVERTISEMENT
  • #3 19270547
    powerT
    Level 9  
    It's just that my project is monstrous, it's connected to BT, WWW, 2 adruino DUE, with two other ESP :-) I'm using the HUGE APP model -> 3Mb no OTA, such a minimal site is enough for me on it.

    While C++ is not a problem for me, I don't know anything about webmaster. But I think I know what you're talking about, I read something that the pages are uploaded somewhere and then there's no fun, if you have some links to read about it drop me a line.
  • ADVERTISEMENT
  • #4 19270705
    khoam
    Level 42  
    powerT wrote:
    I'm just looking for a solution : how to set to display Polish tails ?
    .
    It depends on what encoding is to be used ;) .

    sylweksylwina wrote:
    Insert the page code as files in LittleFS memory and not in the program code.
    .
    There is no such class as LittleFS in the Arduino Core for ESP32. There is, however, FFat.

    powerT wrote:
    something I've read that the pages are uploaded somewhere and then there is no fun, if you have any links to read about this please drop them off.
    .
    Yes, the easiest way to SPIFFS. Link
  • #5 19270784
    powerT
    Level 9  
    Thanks, I'll read up - I'll probably find the knowledge useful at some point.
    Polish tails already done, just needed to add <meta charset='utf-8'>

    There's still a problem with refreshing the page, while when I click on BUTTON the states on the page change, if this change comes from another source (it's correct) from a smartphone, a control panel from an Arduino DUE or another ESP it doesn't update - I'm wasting my time on this for now.

    Let's just say it's not important information for me, I prefer the SerialBT text console on Xiaomi to some waterworks, text messages are enough for me, I even gave up on Blynk, I prefer my solutions. For the time being, I have also quickly solved the problem, an add-on for chrome which updates the page with a specified frequency - but someday I will also deal with the topic, for now it is thousands of lines of code to paste yet I will not deal with nonsense, while something I read some AJAX needed, the web is my weakest side - but somehow I can get around the lack of knowledge on this subject.
ADVERTISEMENT