Je tam Void handleForm() This routine is executed when you press submit
Když přidam do web stranky dalši tlačitko, jak zjistím na ktere bylo kliknuto?
void handleRoot() This routine is executed when you open its IP in browser
<input type="text" name="firstname" value="Mickey">
Jak na to, kdybych chtěl zadat value až při spuštění stranky v tom handleRoot?
String firstname = "Mickey";
Založen: Dec 12, 2005 Příspěvky: 2260 Bydliště: SR, Poprad
Zaslal: po květen 11 2020, 22:11 Předmět:
pozor, nie kazdy prehliadac posiela checkbox ako on, je lepsie tam pridat value="on" resp. to, co sa ma poslat pri zaskrtnuti.
co presne znamena nefunguje? _________________ No vidis, a tak si sa bal
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: st květen 13 2020, 13:06 Předmět:
"Odlaď" si tu stránku úplně mimo ESP, pak snadno zjistíš co prohlížeč doopravdy posílá. Používám k tomu WampServer + VSCode + XDebug. Jde to i jednodušeji, akorát to není tak pohodlné: Otevři si stránku v prohlížeči a zapni si "nástroje pro vývojáře". A tam si zobraz, co poslal prohlížeč na server. Ve všech prohlížečích to bude velmi podobné.
Případně jsem dej zdrojový kód stránky z prohlížeče, podívám se na to.
Na jednom foru mi jeden čípek napsal, že mi to nefunguje, protože checkbox je jen blbe zaškrtávátko, které nic neposila.
Odesílaní infa o stavu checkboxu je prý třeba dodělat přes JavaScrip.
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: čt květen 14 2020, 22:25 Předmět:
To co jsem napsal květen 12, 2020 11:43 funguje. Když není checkbox zaškrtnutý, tak se nic nepošle. V případě že je, tak se pošle parametr s názvem dle atributu "name", hodnota bude dle atributu "value". Proto jsem tam psal
kód:
if (server.hasArg("vehicle1")
{
}
Opravdu bych nehledal chybu v prohlížeči.
Nejjednodušší test dle tvého odkazu:
kód:
<!DOCTYPE html>
<html>
<body>
<h1>Show Checkboxes</h1>
<form action="/index.php">
<input type="checkbox" id="vehicle11" name="vehicle1" value="Bike">
<label for="vehicle1"> I have a bike</label><br>
<input type="checkbox" id="vehicle22" name="vehicle2" value="Car">
<label for="vehicle2"> I have a car</label><br>
<input type="checkbox" id="vehicle33" name="vehicle3" value="Boat">
<label for="vehicle3"> I have a boat</label><br><br>
<input type="submit" value="Submit">
</form>
Založen: Nov 20, 2012 Příspěvky: 1453 Bydliště: Praha
Zaslal: pá květen 15 2020, 21:49 Předmět:
To si fakt nerozumíme. Copak jakýkoli jiný HTML prvek něco někam odesílá při změně stavu ?
Například takto:
kód:
<!DOCTYPE html>
<html>
{script}
function changeCheckbox(box)
{
var url = "/zpracovani?" + box.name + "=";
url += (box.checked) ? "1" : "0";
var xh = new XMLHttpRequest();
xh.onreadystatechange = function()
{
if (xh.readyState == 4)
{
if (xh.status == 200)
{
// tady je mozne zpracovat pripadnou odpoved
console.log(xh.responseText);
}
}
}
xh.open("GET", url, true);
xh.send(null);
}
{/script}
<body>
<h1>Show Checkboxes</h1>
<form action="/index.php">
<input type="checkbox" id="vehicle11" name="vehicle1" value="Bike" onchange="changeCheckbox(this)">
<label for="vehicle1"> I have a bike</label><br>
<input type="checkbox" id="vehicle22" name="vehicle2" value="Car" onchange="changeCheckbox(this)">
<label for="vehicle2"> I have a car</label><br>
<input type="checkbox" id="vehicle33" name="vehicle3" value="Boat" onchange="changeCheckbox(this)">
<label for="vehicle3"> I have a boat</label><br><br>
</form>
</body>
</html>
Jako jméno argumentu je opět atribut name, hodnota pak "0" nebo "1".
Nevím co tím chceš ovládat, ale pro kontinuální ovládání (něco jako řízení nějaké hračky a pod) je vhodnější navázat spojení přes WebSocket (ESP i všechny moderní prohlížeče to podporují) a posílat příkazy přes to. Má-li to být na něco jako "občas něco zapnout/vypnout", tak je to takto mnohem jednodušší.
Tag script je nutné opravit (nešel by tady odeslat příspěvek).
Založen: Jul 24, 2014 Příspěvky: 665 Bydliště: Ano, mam
Zaslal: so květen 16 2020, 8:00 Předmět:
Je to pro souseda.
8 relay modul přes PCF8574
Mam to udělame tak jak jsi napsal.
Zaškrtne ty co chce zapnout / vypnout a klik na button.
Ten button se mu ale nelibi a chce, aby to reagovalo hned při změně stavu toho checkboxu.
Až budu v praci vyzkoušim.
Děkuji.
Časy uváděny v GMT + 1 hodina Jdi na stránku 1, 2Další
Strana 1 z 2
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.