• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Aplikacja webowa

Object Storage Arubacloud
0 głosów
1,205 wizyt
pytanie zadane 17 marca 2018 w PHP przez wojtek_inf Nowicjusz (200 p.)
Cel:

Prosta aplikacja webowa pokazująca pogodę dla wyszukanej miejscowości na 5 najbliższych dni, Czyli od daty dzisiejszej, np: 2018-02-22 do 2018-02-27 itd. Wyszukiwaną miejscowość zapisujemy do bazy danych, zakres dat dla jakich pobrano pogodę oraz IP użytkownika, który wysłał formularz.

Wygląd i działanie:

Prosty formularz z jednym inputem (typu text), który po wysłaniu znajdzie przez udostępnione API miejscowość i wyświetli pogodę na 5 najbliższych dni dla danej miejscowości w dowolnie wybranej przez Ciebie formie.

Pod formularzem dodatkowo wyświetlamy 5 ostatnich szukanych miejscowości pobranych z bazy danych. (Może być w formie tabelki zatytułowanej np.: “Ostatnio sprawdzana pogoda”); Ostylowanie ​całej aplikacji również zależy od Ciebie, nie ma żadnego projektu graficznego.

API i dokumentacja do pobrania pogody: https://openweathermap.org/api

 

Rekomendowane technologie: PHP 5.6 lub 7+, curl, MySQL

Uwagi:

- kod SQL potrzebny do utworzenia bazy danych oraz tabeli musi również znajdować się w projekcie - formularz nie powinien się wysyłać w przypadku gdy nie wprowadzimy miejscowości, a w przypadku gdy nie uda się poprawnie pobrać pogody to wyświetlamy o tym prosty komunikat (np. pod formularzem) Po zakończeniu prac, aplikację należy udostępnić na github.com

Nie wiem od czego zacząć  czy na bazie Pana Mirka  poradników z php i baz danych można rozwiązać to zadanie ? Nie wiem jak z tej strony zassać dane do bazy i czy da się to zrobić na php my admin i potem wysłać na github

 

jestem całkowitym nowicjuszem za wszelkie wskazówki szczerze dziękuje

1 odpowiedź

+2 głosów
odpowiedź 17 marca 2018 przez Tomek Sochacki Ekspert (227,510 p.)
wybrane 17 marca 2018 przez wojtek_inf
 
Najlepsza

Na początek musisz wygenerować dla siebie kod APPID, który będzie za chwilę potrzebny do pobrania danych. W tym celu odwiedź: https://openweathermap.org/appid#get

Teraz możesz łatwo pobrać pogodę na najbliższe 5 dni:

JSON: http://samples.openweathermap.org/data/2.5/forecast?q=M%C3%BCnchen,DE&appid=b6907d289e10d714a6e88b30761fae22

XML: http://samples.openweathermap.org/data/2.5/forecast?q=London,us&mode=xml&appid=b6907d289e10d714a6e88b30761fae22

Generalnie w apce pewnie będziesz pobieral JSON, ale XML dałem Ci żebyś łatwiej mógł przeanalizować co dokładnie i w jakiej formie jest zwracane.

Do pobrania pogody na 5 dni masz dokumentację: https://openweathermap.org/forecast5#name5

Widze, że w tym wypadku trzeba podać miasto, potem kod Państwa wg ISO 3166 i Twój kod APPID. Kody są ogólnie dostępne, Tu masz pierwszą lepszą listę krajów: https://github.com/lukes/ISO-3166-Countries-with-Regional-Codes/blob/master/all/all.xml Cibie interesowały by chyba kody alpha-2. Możesz zrobić np. jakiegoś selecta do wyboru państwa i tego selecta wygenerować z listy (choćby z tego githuba, jest tam też wersja JSON), ewentualnie jakiegoś inputa z podpowiadaniem itp. to już zależy jak sobie to funkcjonalnie wymyślisz.

Testowałem sobie na Londynie i widzę, że da się pobrać 5-dniową bez kodu państwa, ale musisz to dokładniej obadać bo to tak na szybko tylko robiłem (o tej godzinie już nie chce mi się dokładnie testować): http://samples.openweathermap.org/data/2.5/forecast?q=London&mode=xml&appid=b6907d289e10d714a6e88b30761fae22

 

Kod SQL możesz sobie łatwo machnąć w phpMyAdmin i potem strukturę bazy można wyexportować do pliku .sql. Jest to o tyle dobre, że jeśli plik taki umieścisz na githubie to druga strona może sobie łatwo i szybko stworzyć potrzebną bazę poprzez zaimportowanie poszczególnych komend z pliku.

Co do tego powiadamiania o jakiś blędach to proponuję najpierw sprawdzać czy coś wpisano w polu i dopiero wtedy wysyłać Ajax do serwerka.

Aby zapisywać te dane do bazy musiałbyś wg mnie zrobić też jakieś choćby bardzo uproszczone logowanie, aby przypisać dane do jakiegoś usera. Chyba, że ma to być np. kilka w ogóle ostatnich wyszukań (czyli np. ja szukam Poznań, za chwilę Ty Wrocław i kolejna osoba będzie widziała nasze wyszukania jako ostatnie). Ale to doczytaj w warunkach zadania albo dopytaj.

Podobne pytania

0 głosów
0 odpowiedzi 241 wizyt
pytanie zadane 24 maja 2018 w Nasze projekty przez Reviver Ace Nowicjusz (120 p.)
0 głosów
1 odpowiedź 290 wizyt
0 głosów
1 odpowiedź 1,261 wizyt

92,568 zapytań

141,424 odpowiedzi

319,634 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...