Přesměrování na URL
Napsal: 19 čer 2019, 14:51
Ahoj, jak můžu desku Wemos D1 přesměrovat na danou webovou URL adresu, kvůli následnému zápisu do databáze?
Díky
Díky
České fórum pro všechny nadšence do Arduina a dalších technologií.
https://forum.hwkitchen.cz/
Toto sice není "přesměrování", ale je k tomu pěkný článek ...martinius96 píše: ↑20 čer 2019, 02:23Vykonáš GET/POST request pod protokolom HTTP, alebo HTTPS na lokalitu akú chceš.
Dík moc, zkusím se podívat a vyzkoušímpavel1tu píše: ↑20 čer 2019, 08:02Toto sice není "přesměrování", ale je k tomu pěkný článek ...martinius96 píše: ↑20 čer 2019, 02:23Vykonáš GET/POST request pod protokolom HTTP, alebo HTTPS na lokalitu akú chceš.
https://arduino.cz/programovani-webovyc ... o-arduino/
přesměrování = z jednoho zařízení posílám po WiFi data přes Genuino YUN na internet - YUN zajišťuje bezpečnost, přihlašování k modulům, k síti a kešování dat při výpadku web serveru.
to první vysvětlim, to druhé je "uzavřený" projekt jen pro účastníky (snažíme se zabezpečit HW a SW díry u WiFi modulů u Arduin) aby se mohly používat třeba u alarmu a řízení domácnosti.
Kód: Vybrat vše
#include <ESP8266WiFi.h>
int hodnota = 10;
// vytvoření proměnných s názvem WiFi sítě a heslem
const char* nazevWifi = "název wifi";
const char* hesloWifi = "heslowifi";
//adresa cílového serveru
const char* server = "cidla.cekuj.net";
WiFiClient client;
void setup() {
Serial.begin(9600);
//WiFi
WiFi.begin(nazevWifi, hesloWifi);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Pripojeno k WiFi siti ");
Serial.println(nazevWifi);
Serial.print("IP adresa: ");
Serial.println(WiFi.localIP());
}
void loop() {
if(client.connect(server, 80)){
delay(100);
Serial.println("OK");
client.println("http://cidla.cekuj.net/index.php?cislo=");
client.println(hodnota);
client.println("Host: srv71.endora.cz");
client.println("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
client.println("Connection: close");
client.println();
delay(500);
client.stop();
delay(5000);}
}
Kód: Vybrat vše
$mysqli = mysqli_connect($server, $user, $pass, $db); //připojení k MySQL
if($mysqli and isset($_GET['cislo'])){ //pokud GET obsahuje 'hodnota', pokračuj
$cislo = sanitize($_GET['cislo']);
$sql = "INSERT INTO data (cislo) VALUES (".$cislo.")"; //sestavení SQL
$doSql = $mysqli->query($sql); //vykonání SQL
if($doSql){ //test úspěchu
echo 'Zápis byl úspěšný';
}
else{
echo 'Něco se nepovedlo';
}
}
else{
echo "Neco je špatně";
}
function sanitize($input){ //ořízne řetězec
$input = htmlspecialchars($input);
$input = htmlentities($input);
$input = strip_tags($input);
$input = trim($input);
return $input;
}
Kód: Vybrat vše
#include <ESP8266WiFi.h>
int hodnota = 10;
// vytvoření proměnných s názvem WiFi sítě a heslem
const char* nazevWifi = "název wifi";
const char* hesloWifi = "heslowifi";
//adresa cílového serveru
const char* server = "cidla.cekuj.net";
WiFiClient client;
void setup() {
Serial.begin(9600);
//WiFi
WiFi.begin(nazevWifi, hesloWifi);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Pripojeno k WiFi siti ");
Serial.println(nazevWifi);
Serial.print("IP adresa: ");
Serial.println(WiFi.localIP());
}
void loop() {
if(client.connect(server, 80)){
delay(100);
Serial.println("OK");
client.print("GET http://cidla.cekuj.net/index.php?cislo=");
client.println(hodnota);
client.println("Host: cidla.cekuj.net");
client.println("Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
client.println("Connection: close");
client.println();
delay(500);
client.stop();
delay(5000);}
}