Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: volání webové stránky scriptem

PHP PHP volání webové stránky scriptem American English version English version

Aktivity (1)
Avatar
Pokorný Martin:15. července 22:32

Ahoj,

potřeboval bych poradit jak "nejčistěji" volat z PHP scriptu jinou webovou stranku (ne presmerovani).

Jedná se o to, že mám několik iot zařízení (relátek) a kontroluji u nich stav (zapnuto/vypnuto). Pokud zjistím, že má být v daný čas zapnuto/vypnuti, potřebuji zavolat webovou stránku daného relátka, které jej zapne/vypne. Takto procházím cca 10 zařízení a postupně jejich stavu potřebuji takto ošetřit..

nevím, jestli použít javascript, php nebo něco jiného

díky

 
Odpovědět 15. července 22:32
Avatar
Martin Križan:15. července 23:08

Skús pozrieť file_get_conten­ts().

 
Nahoru Odpovědět 15. července 23:08
Avatar
Miskyns
Člen
Avatar
Miskyns:16. července 13:39

Záleží. Na zařízení (relátku) jsou stránky v PHPčku, které dávají podnět k vypnutí/zapnutí. Jsou dva způsoby jak to udělat.

ZPŮSOBY

1. Na dané stránce relátka bude GET, to znamená, že když budeš chtít relátko vypnout můžeš to udělat přímo přes adresní řádek

http://strankarelatka/control.php?stav=vypnout

nebo pomocí JavaScriptu

function vypnout() {
        $.ajax({
                url: "http://strankarelatka/",
                method: "GET",
                data: "stav=vypnout",
                success: function() {
                        console.log("Relátko vypnuto");
                }
        });
}

PHP

//Kontrola zda $_GET má nějakou hodnotu
if(isset($_GET)) {

        //Může být i if, ale já jsem radši pro switch
        switch($_GET['stav'] {
                //GET hodnota vypnout
                case "vypnout":
                        //kód
                        ...
                        break;

                //GET hodnota zapnout
                case "zapnout":
                        //kód
                        ...
                        break;
        }
}

2. Na dané stránce bude POST, to znamená, že nepíšeš přímo do adresy.

function vypnout() {
        $.ajax({
                url: "http://strankarelatka/",
                method: "POST", //Posíláme přes POST
                data: "stav=vypnout",
                success: function() {
                        console.log("Relátko vypnuto");
                }
        });
}

PHP

//Kontrola zda $_GET má nějakou hodnotu
if(isset($_POST)) {

        //Může být i if, ale já jsem radši pro switch
        switch($_POST['stav'] {
                //POST hodnota vypnout
                case "vypnout":
                        //kód
                        ...
                        break;

                //POST hodnota zapnout
                case "zapnout":
                        //kód
                        ...
                        break;
        }
}

Pozn : Samozřejmě jde tento kód i zkrátit...

Je to jenom rychlý nástřel ;)

Nahoru Odpovědět  +1 16. července 13:39
Proč se to učit, když můžeš použít GOOGLE...
Avatar
Pokorný Martin:16. července 14:57

diky za tipy

Na relatku je GET a volam jej z browseru takto: http://strankarele/cm?… (power0)

na strane rele, to osetrene mam.

jde mi o to, jak jej volat ze scriptu, ve kterém zjišťuji zda má být zapnuto/vypnuto..

 
Nahoru Odpovědět 16. července 14:57
Avatar
Miskyns
Člen
Avatar
Odpovídá na Pokorný Martin
Miskyns:16. července 20:34

Ukázku JavaScriptu jsem ti napsal ;) :)

Nahoru Odpovědět 16. července 20:34
Proč se to učit, když můžeš použít GOOGLE...
Avatar
Pokorný Martin:16. července 20:47

jeee jsem trubka ;) dík moc to je přesně ono :)

 
Nahoru Odpovědět  +1 16. července 20:47
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.