NOWE POSTY | NOWE TEMATY | POPULARNE | STAT | RSS | KONTAKT | REJESTRACJA | Login: Hasło: rss dla

HOME » INNE » FAJNE, INTERNETOWE KURSY PROGRAMOWANIA PO POLSKU

Przejdz do dołu stronyStrona: 1 / 1    strony: [1]

Fajne, internetowe kursy programowania po Polsku

Kursy programowania i rozwoju osobistego.
  
sp5iou
08.01.2018 19:29:25
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2503835
Od: 2012-9-2
Hej.
Bawię się od dłuższego czasu w różne procesorowe klocki: arduino, Rasberry|Pi, HY-mini...
Zafascynowały mnie wyposażone w dość silne procki moduły WiFi ESP8266, przydatne do sterowania zdalnego poprzez przegladarkę.
No i narodziła się potrzeba nabycia umiejętności w tworzeniu stron www, w dodatku optymalnych co do wielkości kodu.
Poszukałem kursów html, css, php na Youtubie, kilka zacząłem, nie skończyłem bo były nudne i kiepsko wiedza właziła do głowy.

Ale właśnie znalazłem całą serię znakomitych kursów po Polsku, które prowadzi Mirosław Zelent i pod takim hasłem można szukać na Youtubie.

Prowadzi bardzo przystępnie, z pasją, ciekawie. Pan Mirosław, razem z drugim kolegą Damianem Stelmach, prowadzą portal http://pasja-informatyki.pl/, gdzie można znależć kursy i materiały z interesujących dziedzin.
Teraz przerabiam równolegle dwa kursy - HTML i CSS, bo te zagadnienia są bardzo mocno powiązane, ale widzę w katalogu inne kursy programowania: C++, Java Script, PHP, ale również metodyki uczenia się i innych zagadnień przydatnych w każdym wieku.

https://www.youtube.com/results?search_query=miros%C5%82aw+zelent

Warto coś wybrać i poświęcić systematycznie nieco czasu na rozwój własnych umiejętności, a słucha się i ogląda z prawdziwą przyjemnością.

Naprawdę polecam, tylko Uwaga!!! to wciąga i ani się człek nie obejrzy a nocka w pełni.


_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
Electra29.03.2024 07:13:50
poziom 5

oczka
  
sp9uxy
09.01.2018 07:23:47
poziom najwyższy i najjaśniejszy :-)

Grupa: Użytkownik

QTH: Gliwice

Posty: 2075 #2504043
Od: 2009-8-25
    sp5iou pisze:


    Teraz przerabiam równolegle dwa kursy - HTML i CSS, bo te zagadnienia są bardzo mocno powiązane,



Sam html i css to trochę mało, bo jeszcze php, js i jakaś baza danych może być postgresql lub mysql.

C++ bym olał a zainteresował się językiem JAVA. No i oczywiście zostaje do poznania system

operacyjny na którym to wszystko zainstalujesz, najlepiel Linux.
  
sp5iou
09.01.2018 07:51:39
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2504054
Od: 2012-9-2


Ilość edycji wpisu: 3
Tak - na to wszystko są kursy.
Serwerek sobie postawiłem na raspbianie na raspberrypi3 - appache2, php, mysql, ale akurat mnie chodzi o sterowanie przez przeglądarkę za pomocą malutkich płyteczek ESP2866. Do tego tylko trzeba html i CSS, bo php ani mysql na takiej płytce się nie postawi, choć może korzystać z dobrodziejstw innych serwerów - własnych lub tego co w internecie.
Nawet działa: http://sp5iou.homeip.net, o ile mi się neostrada nie wywali. A to się niestety zdarza w moim leśnym qra.

Ale wracając do tematu.
Kursy Pana Sławka są fajne.

_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
canis_lupus
09.01.2018 08:20:35
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Kraków

Posty: 7446 #2504061
Od: 2013-7-18
    SQ5KLN pisze:

      sp5iou pisze:

      php ani mysql na takiej płytce się nie postawi


    Bardzo lekki jest serwer nginx (znacznie mniej zasobożerny niż Apache), do większości zastosowań wystarczy też baza SQLite (w zasadzie format, bo nie stawia się serwera jako takiego) a jakby co, to PHP też potrafi pracować samodzielnie (bez współpracy z jakimkolwiek serwerem WWW typu Apache czy nginx), bo można go uruchomić jako polecenie z konsoli:
    php -S 0.0.0.0:8080 -t folder_root/
    Produkcyjnie lepiej PHP-a za czymś ukryć (bo uruchomienie go na porcie 80 czy innym poniżej 1024 wymaga uruchomienia go z roota a tego lepiej nie robić bardzo szczęśliwy) ale na potrzeby testów to bardzo wygodny sposób używania php bez jakiegokolwiek serwera.


Na ESP8266 nawet nginxa się nie da postawić. To jest malutki mikrokontroler.
_________________
"Prezydium zapoznało się z wnioskiem Marka SP9UO, w którym domaga się podjęcia przez Prezydium działań przeciwko osobom szkalującym PZK, a szczególnie przeciwko członkom organizacji. Takie działania będą podjęte po zasięgnięciu opinii prawnej."

To mówiłem ja, "unlis i ukrywający coś, wstydzący się swojego znaku, człowiek z ulicy, losowa osoba z internetu, element, ignorant i darmozjad, anonimowy pirat, konfident, donosiciel, do d**y".
  
sp9uxy
09.01.2018 09:51:30
poziom najwyższy i najjaśniejszy :-)

Grupa: Użytkownik

QTH: Gliwice

Posty: 2075 #2504081
Od: 2009-8-25


Ilość edycji wpisu: 2
[quote=canis_lupus]
    SQ5KLN pisze:

      sp5iou pisze:

      php ani mysql na takiej płytce się nie postawi


    Bardzo lekki jest serwer nginx (znacznie mniej zasobożerny niż Apache), do większości zastosowań wystarczy też baza SQLite (w zasadzie format, bo nie stawia się serwera jako takiego) a jakby co, to PHP też potrafi pracować samodzielnie (bez współpracy z jakimkolwiek serwerem WWW typu Apache czy nginx), bo można go uruchomić jako polecenie z konsoli:
    php -S 0.0.0.0:8080 -t folder_root/
    Produkcyjnie lepiej PHP-a za czymś ukryć (bo uruchomienie go na porcie 80 czy innym poniżej 1024 wymaga uruchomienia go z roota a tego lepiej nie robić bardzo szczęśliwy) ale na potrzeby testów to bardzo wygodny sposób używania php bez jakiegokolwiek serwera.


Na ESP8266 nawet nginxa się nie da postawić. To jest malutki mikrokontroler. [/quote]




Czytałeś jaki tam jest procesor? To przeczytaj a nie pisz głupot że jest malutki.

Jak "skompilujesz" sobie nginx'a to będzie działać.

L106 32-bit RISC microprocessor core based on the Tensilica Xtensa Diamond Standard 106Micro running at 80 MHz†
  
canis_lupus
09.01.2018 10:04:27
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Kraków

Posty: 7446 #2504088
Od: 2013-7-18
    SQ5KLN pisze:

      sp9uxy pisze:


      Czytałeś jaki tam jest procesor? To przeczytaj a nie pisz głupot że jest malutki.

      Jak "skompilujesz" sobie nginx'a to będzie działać.

      L106 32-bit RISC microprocessor core based on the Tensilica Xtensa Diamond Standard 106Micro running at 80 MHz†


    Malutki z perspektywy postawienia na tym Linuxa, bo oczywiście w porównaniu z ATmegą to jest wypas bardzo szczęśliwy Nginx-a na to nie skompilujesz (za mało RAM, kernel Linuxa nie ruszy, edit: że o Harwardzkiej architekturze nie wspomnę bardzo szczęśliwy).


Nie pisz głupot, UXY nie skompiluje?!
_________________
"Prezydium zapoznało się z wnioskiem Marka SP9UO, w którym domaga się podjęcia przez Prezydium działań przeciwko osobom szkalującym PZK, a szczególnie przeciwko członkom organizacji. Takie działania będą podjęte po zasięgnięciu opinii prawnej."

To mówiłem ja, "unlis i ukrywający coś, wstydzący się swojego znaku, człowiek z ulicy, losowa osoba z internetu, element, ignorant i darmozjad, anonimowy pirat, konfident, donosiciel, do d**y".
  
sp9uxy
09.01.2018 10:17:43
poziom najwyższy i najjaśniejszy :-)

Grupa: Użytkownik

QTH: Gliwice

Posty: 2075 #2504092
Od: 2009-8-25


Ilość edycji wpisu: 1
[quote=canis_lupus]
    SQ5KLN pisze:

      sp9uxy pisze:


      Czytałeś jaki tam jest procesor? To przeczytaj a nie pisz głupot że jest malutki.

      Jak "skompilujesz" sobie nginx'a to będzie działać.

      L106 32-bit RISC microprocessor core based on the Tensilica Xtensa Diamond Standard 106Micro running at 80 MHz†


    Malutki z perspektywy postawienia na tym Linuxa, bo oczywiście w porównaniu z ATmegą to jest wypas bardzo szczęśliwy Nginx-a na to nie skompilujesz (za mało RAM, kernel Linuxa nie ruszy, edit: że o Harwardzkiej architekturze nie wspomnę bardzo szczęśliwy).


Nie pisz głupot, UXY nie skompiluje?![/quote]


Coś takiego jak nginx da się na tym postawić, tylko o trzeba wiedzieć jak.
  
canis_lupus
09.01.2018 10:33:18
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Kraków

Posty: 7446 #2504098
Od: 2013-7-18
    VSS pisze:

      sp5iou pisze:


      Nawet działa: http://sp5iou.homeip.net, o ile mi się neostrada nie wywali. A to się niestety zdarza w moim leśnym qra.


    a można zobaczyć źródło ?


CTRL+u
_________________
"Prezydium zapoznało się z wnioskiem Marka SP9UO, w którym domaga się podjęcia przez Prezydium działań przeciwko osobom szkalującym PZK, a szczególnie przeciwko członkom organizacji. Takie działania będą podjęte po zasięgnięciu opinii prawnej."

To mówiłem ja, "unlis i ukrywający coś, wstydzący się swojego znaku, człowiek z ulicy, losowa osoba z internetu, element, ignorant i darmozjad, anonimowy pirat, konfident, donosiciel, do d**y".
  
sp9uxy
09.01.2018 16:11:42
poziom najwyższy i najjaśniejszy :-)

Grupa: Użytkownik

QTH: Gliwice

Posty: 2075 #2504225
Od: 2009-8-25


Ilość edycji wpisu: 1
    SQ5KLN pisze:

      sp9uxy pisze:

      Coś takiego jak nginx da się na tym postawić, tylko o trzeba wiedzieć jak. Idź pani Basi mysz się posuła.


    Nginx-a nie postawisz. Są różne forki na bazie nginx-a na przykład esp-ginx itp. ale to mocna przeróbka a nie tylko rekompilacja, normalnego nginx-a nie skompilujesz (za to nginx świetnie pracuje jako proxy do platform Arduino ale to zupełnie inna sprawa bardzo szczęśliwy).



Oczywiście kompilacja to była z mojej strony pewna przenośnia, ale jak by założyć 1 worker
to coś podobnego można napisać proponuję zobaczyć rozwiązania na cpu Microchip i STM.
  
VSS
09.01.2018 18:44:20
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: POZnan*

Posty: 3769 #2505264
Od: 2009-12-24
    SQ5KLN pisze:

      canis_lupus pisze:

      CTRL+u


    Pewnie chodziło o to co chodzi na porcie 82 bardzo szczęśliwy


tak, chciałem zobaczyć źródło softu które widać.
_________________
Artur VSS
https://sp3vss.eu
PZK - Piraci Z Karaibów

Udostępniający link nie odpowiada z automatu za treść:
https://tiny.pl/tqrng
http://hudoc.echr.coe.int/eng?i=001-187930
  
sp5iou
10.01.2018 18:40:01
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2505586
Od: 2012-9-2


Ilość edycji wpisu: 11
Żródło widać.
Na porcie 80 jest raspberrypi3, a na porcie 82 jest ta płyteczka - obecnie esp8266 ESP-12 Lua CH340
Obrazek
- ona ma Wikęcej GPIO niż malutka płyteczka ESP8266 ESP-01,
Obrazek
tyle że dla mnie jest wygodniejsza do eksperymentów
Część kodu na jest w internecie i właśnie o to mi chodzi, żeby wszystko wsadzić na płytkę, łącznie z wygladem zdefiniowanym przez CSS.
Jeśli się to programuje w Arduino, to cała stronkę trzeba wsadzić do Flasha jako zbiór stringów. Te co są niezmienne można zapakować do Flasha a te co zmienne do ramu i właśnie dlatego potrzebuję tylko html i CSS, bo serwera php w prosty sposób sie tam nie wrzuci. Zresztą niema takiej potrzeby.
Generalnie chodzi o wyświetlenie na przegladarce ładnego okna z wyświetlanymi danymi z czujników, kilka przycisków, suwaczki, ewentualnie o zmieniających sie atrybutach w zależności od sytuacji.
Coś w stylu jak zrobiłem w pythonie pod Tcl/Tk, no moze trochę bardziej upiększone.
Obrazek

Działać ma również w inranecie bez dostępu do internetu i bez dodatkowego serwera, dlatego wszystko ma być w module.
Stąd potrzeba uaktualnienia wiedzy w tworzeniu stron w html / css.

Dobra, ale późno się robi, biorę się za studiowanie.

_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
Electra29.03.2024 07:13:50
poziom 5

oczka
  
sp5iou
10.01.2018 21:43:44
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2505622
Od: 2012-9-2


Ilość edycji wpisu: 1
Pewnie vss-owi chodzi o żródło którego nie widać, czyli co wrzuciłem do flasha ESP8266.
Żadna tajemnica, no poza hasłami na domowe AP, bo to oparte na francuskim przykładzie, trochę go wzbogaciłem, bo to ma też móc łazić w robocie po całym domu i móc sobie przełaczać access pointy wifi.

No niestety zrobię bałagan, bo nie widzę mozliwości publikacji kodu, jak na forach informatycznych:

#include <,WiFiClient.h>,
#include <,ESP8266WebServer.h>,
#include <,DHT.h>,
//#include <,Adafruit_BMP085.h>,

const char* ssid[] PROGMEM = "ssid0", "ssid1", "ssid2",
const char* password[] PROGMEM = "pass0", "pass1", "pass2",
const int apn = 3, // number of known Access points
int rssis[3] = -200, -200, -200,
#define MINSIGNAL -95 //Below starts try to find stronger AP
const int serverport = 82,
#define DHTTYPE DHT11 // DHT type (DHT11, DHT22)
#define DHTPIN D4 // DHT Pin
const uint8_t GPIOPIN[4] = D5, D6, D7, D8, // Led
float t = 0 ,
float h = 0 ,
float p = 0,
String etatGpio[4] = "OFF", "OFF", "OFF", "OFF",
int apj = 0, //Access points counter

// create Objects
DHT dht(DHTPIN, DHTTYPE),
//Adafruit_BMP085 bmp,
//ESP8266WebServer server ( 80 ),
ESP8266WebServer server ( serverport ), //Port serverport set above to distinguish from ordinary web pages

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 += "<,meta charset='utf-8'>,",
page += "<,title>,ESP8266 Stacja Pogodowa<,/title>,<,/head>,<,body>,",
page += "<,div class='container-fluid'>,",
page += "<,div class='row'>,",
page += "<,div class='col-md-12'>,",
page += "<,h1>,Mini stacja meteo & włącznik LED ESP8266<,/h1>,",
page += "<,h3>,Mini stacja meteo<,/h3>,",
page += "<,ul class='nav nav-pills'>,",
page += "<,li class='active'>,",
page += "<,a href='#'>, <,span class='badge pull-right'>,",
page += t,
page += "<,/span>, Temperatura<,/a>,",
page += "<,/li>,<,li>,",
page += "<,a href='#'>, <,span class='badge pull-right'>,",
page += h,
page += "<,/span>, Wilgotność<,/a>,",
page += "<,/li>,<,li>,",

page += "<,a href='#'>, <,span class='badge pull-right'>,",
page += p,
page += "<,/span>, Ciśnienie atmosferyczne<,/a>,<,/li>,",
page += "<,/li>,<,li>,",

page += "<,a href='#'>, <,span class='badge pull-right'>,",
page += ssid[apj],
page += "<,/span>, Połaczenie WiFi z <,/a>,<,/li>,",
page += "<,/li>,<,li>,",

page += "<,a href='#'>, <,span class='badge pull-right'>,",
page += WiFi.RSSI(),
page += "<,/span>, Siła sygnału <,/a>,",
page += "<,/ul>,",

page += "<,table class='table'>,", // Tableau des relevés
page += "<,thead>,<,tr>,<,th>,Czujnik<,/th>,<,th>,Pomiar<,/th>,<,th>,Wartość<,/th>,<,th>,Wartość przewidywana<,/th>,<,/tr>,<,/thead>,", //Entê,te
page += "<,tbody>,", // Contenu du tableau
page += "<,tr>,<,td>,DHT11<,/td>,<,td>,Temperatura<,/td>,<,td>,", // Premiè,re ligne : température
page += t,
page += "°,C<,/td>,<,td>,",
page += " -<,/td>,<,/tr>,",
page += "<,tr class='active'>,<,td>,DHT11<,/td>,<,td>,Wilgotność<,/td>,<,td>,", // 2nd ligne : Humidité
page += h,
page += "%<,/td>,<,td>,",
page += " -<,/td>,<,/tr>,",
page += "<,tr>,<,td>,BMP180<,/td>,<,td>,Ciśnienie atmosferyczne<,/td>,<,td>,", // 3è,me ligne : PA (BMP180)
page += p,
page += " mbar<,/td>,<,td>,",
page += "-<,/td>,<,/tr>,",

page += "<,/tbody>,<,/table>,",
page += "<,h3>,GPIO<,/h3>,",
page += "<,div class='row'>,",
page += "<,div class='col-md-4'>,<,h4 class ='text-left'>,D5 ",
page += "<,span class='badge'>,",
page += etatGpio[0],
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 += etatGpio[1],
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 += etatGpio[2],
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 class='col-md-4'>,<,h4 class ='text-left'>,D8 ",
page += "<,span class='badge'>,",
page += etatGpio[3],
page += "<,/span>,<,/h4>,<,/div>,",
page += "<,div class='col-md-4'>,<,form action='/' method='POST'>,<,button type='button submit' name='D8' 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='D8' value='0' class='btn btn-danger btn-lg'>,OFF<,/button>,<,/form>,<,/div>,",
page += "<,/div>,",
page += "<,br>,<,p>,<,a href='http://www.projetsdiy.fr'>,www.projetsdiy.fr<,/p>,",
page += "<,/div>,<,/div>,<,/div>,",
page += "<,/body>,<,/html>,",
return page,

void handleRoot()
if ( server.hasArg("D5") )
handleD5(),
else if ( server.hasArg("D6") )
handleD6(),
else if ( server.hasArg("D7") )
handleD7(),
else if ( server.hasArg("D8") )
handleD8(),
else
server.send ( 200, "text/html", getPage() ),



void handleD5()
String D5Value,
updateGPIO(0, server.arg("D5")),


void handleD6()
String D6Value,
updateGPIO(1, server.arg("D6")),


void handleD7()
String D7Value,
updateGPIO(2, server.arg("D7")),


void handleD8()
String D8Value,
updateGPIO(3, server.arg("D8")),


void updateGPIO(int gpio, String DxValue)
Serial.println(""),
Serial.println("Aktualizuj GPIO "), Serial.print(GPIOPIN[gpio]), Serial.print(" ->, "), Serial.println(DxValue),

if ( DxValue == "1" )
digitalWrite(GPIOPIN[gpio], HIGH),
etatGpio[gpio] = "ON",
server.send ( 200, "text/html", getPage() ),
else if ( DxValue == "0" )
digitalWrite(GPIOPIN[gpio], LOW),
etatGpio[gpio] = "OFF",
server.send ( 200, "text/html", getPage() ),
else
Serial.println("Err Led Value"),



void connection()
// Wait for connection
for (apj = 0, apj <, apn, apj++)
rssis[apj] = -200,//Set low strengths for known access points.

WiFi.mode(WIFI_STA),
WiFi.disconnect(),
delay(100),
Serial.println("scan start"),

// WiFi.scanNetworks will return the number of networks found
int n = WiFi.scanNetworks(),
Serial.println("scan done"),
if (n == 0)
Serial.println("no networks found"),
else

Serial.print(n),
Serial.println(" networks found"),
for (int i = 0, i <, n, i++)

// Print SSID and RSSI for each network found
Serial.print(i),
Serial.print(": "),
Serial.print(WiFi.SSID(i)),
Serial.print(" ("),
Serial.print(WiFi.RSSI(i)),
for (apj = 0, apj <, apn, apj++)
if (WiFi.SSID(i) == ssid[apj])
rssis[apj] = int(WiFi.RSSI(i)), // assigns signal strengths to known access points


Serial.print(")"),
Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE) ? " " : "*"),
delay(10),


Serial.println("Finding the strongest network "),
//Finding the strongest AP.
int maxrssi = -200,
int apjmax = 0,
for (apj = 0, apj <, apn, apj++)
if (rssis[apj] >, maxrssi)
maxrssi = rssis[apj],
apjmax = apj,


apj = apjmax,
WiFi.disconnect(),
delay(1000),
Serial.print("Trying to connect to the strongest known Access Point no "),
Serial.print(apj),
Serial.print(" "),
Serial.print(ssid[apj]),
Serial.print(" Signal strength "),
Serial.println(rssis[apj]),
WiFi.begin ( ssid[apj], password[apj] ),
for (int i = 0, (i <, 30 && WiFi.status() != WL_CONNECTED), i++)
delay ( 500 ), Serial.print ( "." ),

if (WiFi.status() != WL_CONNECTED)
Serial.println(""),
Serial.print("Failed to connect to no "),
Serial.print(apj),
Serial.print(" "),
Serial.println(ssid[apj]),

//If failed for any reasons try to connect to other knowsn AP
while ( WiFi.status() != WL_CONNECTED )
for (apj = 0, apj <, apn && WiFi.status() != WL_CONNECTED, apj++)
Serial.print("Trying to connect to no "),
Serial.print(apj),
Serial.print(" "),
Serial.println(ssid[apj]),
WiFi.begin ( ssid[apj], password[apj] ),
for (int i = 0, (i <, 20 && WiFi.status() != WL_CONNECTED), i++)
delay ( 500 ), Serial.print ( "." ),

if (WiFi.status() != WL_CONNECTED)
Serial.println(""),
Serial.print("Failed to connect to "),
Serial.println(ssid[apj]),

else break,



// WiFi connexion is OK
Serial.println ( "" ),
Serial.print ( "Connected to no " ), Serial.println (apj), Serial.println (" "), Serial.println ( ssid[apj] ),
Serial.print ( "IP address: " ), Serial.println ( WiFi.localIP() ),
Serial.print("Signal strength "),
Serial.println(int(WiFi.RSSI())),
// On branche la fonction qui gè,re la premiere page / link to the function that manage launch page
server.on ( "/", handleRoot ),

server.begin(),
Serial.print ( "HTTP server started on port " ),
Serial.println(serverport),

//********************************************************************************************************

void setup()
for ( int x = 0 , x <, 5 , x++ )
pinMode(GPIOPIN[x], OUTPUT),

delay(5000), //delay for com port to establish.
Serial.begin ( 115200 ),

/*
// Initialisation du BMP180 / Init BMP180
if ( !bmp.begin() )
Serial.println("BMP180 KO!"),
while(1),
else
Serial.println("BMP180 OK"),

*/

connection(),


void loop()
// put your main code here, to run repeatedly:
if (WiFi.status() == WL_CONNECTED && int(WiFi.RSSI()) >, MINSIGNAL)
server.handleClient(),
t = dht.readTemperature(),
h = dht.readHumidity(),
// p = bmp.readPressure() / 100.0F,
delay(500),

else
Serial.print("Lost connection with "),
Serial.println(ssid[apj]),
connection(),


Tu zastosowano upiększacze ze strony bootstrap i właśnie to chcę wywalić i zrobić własne style,
Tu też brakuje suwaków i kontekstowej zmiany atrybutów obiektów.
W moim pythonowym okienku, jak się zapali leda to się kolor buttona zmienmia na jaśniejszy i napis się zmienia na set led off off, no i jest "toggle", nie mówiąc już o suwaczku do kręcenia serwem wesoły.

Do takiego "scope of work" nie potrzeba ani js ani php a już napewno mysql wesoły.

Purystów językowych przepraszam za anglojęzyczne komentarze w kodzie, ale tak się już przyzwyczaiłem i tak też jest praktyczniej.

"Polacy nie gęsi i swój język mają", ale też obce języki znają.

Mikołaj Rej znał Łacinę, Grekę i Bóg wie co jeszcze.


_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
sp9uxy
11.01.2018 10:00:41
poziom najwyższy i najjaśniejszy :-)

Grupa: Użytkownik

QTH: Gliwice

Posty: 2075 #2505706
Od: 2009-8-25
Ale to tylko html, do klapania łapkami i wyświetlania temp. wystarczy.
  
sp5iou
11.01.2018 10:27:58
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2505711
Od: 2012-9-2
No właśnie o to chodzi.

Można by też używać js, tylko nie wiem jak zrobić js inline tak jak css inline się robi w html.
Na mój obecnu stan wiedzy, cała stronka musi się zmieścić razem z kodem w C czy też Arduino, ale generalnie do sterowania i odczytywania czujników wystarczy html i css.

A tak apropos to aktualna strona używa js, ale bierze skrypty z internetu (Bootstrap), no i właśnie ten bootstrap chcę wyrżnąć. Bez odwołań do bootstrap działa wszystko, ale nie wygląda wesoły.

_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
sp5iou
11.01.2018 21:36:21
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: Warszawa

Posty: 2010 #2505945
Od: 2012-9-2
Dzięki za informację jak włączyć jscript inline. To się przydać może jak html i css nie wystarczy.
Poćwiczę to jak przyjdzie pora.

Tak - bootstrap czy inne sposoby wzbogacania stronki z zewnątrz są bardzo pomocne, ale to ma działać całkowicie samodzielnie, bez dodatkowego serwera w intranecie i bez dostępu do internetu nawet kosztem ograniczeń funkcjonalności i zarzynania procesorka. Takie są założenia.

Oczywiście w zastosowaniach gdzie i tak musi być internet, np gdy moduł ma służyć do podgladania stanu urządzeń w chałupie z zewnątrz, poprzez internet, wtedy takich ograniczeń niema i hulaj dusza z bootstrapami, fontami gogle, chmurą i innymi udogodnieniami.

Ten kod jest wzięty w większości z przykładu z internetu. On mi się generalnie nie podoba, właśnie dlatego że trzyma stronkę w RAM, ale docelowo zrobię inaczej. Większość strony będzie w PROGMEM, czyli we flashu.
To takie pierwsze koty za płoty - zapoznanie się z zagadnieniem.



_________________
(((73))) Marcin.
Słucham na DMR TG-26056 i 2605 i FM SR5RR. ID: 2605142-portable lub 2605153-home
Warszawa KO02OE, VOT PZK 73
KF: FTDX101D, FT-817ND, FT897, IC735, IC706, FT991, IC7000, UNIDEN2020,
HM: QCX, Forty-9er,uBitX, Pilgrim, Kacper 40m, Taurus 40m,
UKF: Motorola MCX100, Radmor FM315K, IC211E, Intek HR2040, TM-218, QYT KT-8900 i KT8900D, TYT DM380, RT320. Baofengi UV-5R, UV-B6, UV82. FT-817ND, Radioddity GD-77, TYT DM-9600, TYT DMUV380, Anytone D868UV, Anytone D578UV PRO, Anytone D878UV, FT290RII,
PA: IC2KL(500W), Tuner: LDG600 ProII, LDG11ZPro.
ANT: Multiband InVee, GP7DX, Slooper 160m, Lafayette UV300 i uv200, InV L na samochodzie.
((( NIGDY NIE PRZEKRACZAM MOCY LICENCYJNEJ )))
Niema głupich pytań, spotyka się niezbyt mądre odpowiedzi.

  
VSS
11.01.2018 21:49:21
poziom najwyższy i najjaśniejszy :-)



Grupa: Użytkownik

QTH: POZnan*

Posty: 3769 #2505951
Od: 2009-12-24
    sp5iou pisze:

    Pewnie vss-owi chodzi o żródło którego nie widać,



dziękuję
_________________
Artur VSS
https://sp3vss.eu
PZK - Piraci Z Karaibów

Udostępniający link nie odpowiada z automatu za treść:
https://tiny.pl/tqrng
http://hudoc.echr.coe.int/eng?i=001-187930
  
Electra29.03.2024 07:13:50
poziom 5

oczka

Przejdz do góry stronyStrona: 1 / 1    strony: [1]

  << Pierwsza      < Poprzednia      Następna >     Ostatnia >>  

HOME » INNE » FAJNE, INTERNETOWE KURSY PROGRAMOWANIA PO POLSKU

Aby pisac na forum musisz sie zalogować !!!

TestHub.pl - opinie, testy, oceny