Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [AJAX][PHP]komunikacja z API JSON
wpaski
post
Post #1





Grupa: Zarejestrowani
Postów: 206
Pomógł: 6
Dołączył: 25.12.2011

Ostrzeżenie: (0%)
-----


Jest jakiś plik json z danymi, powiedzmy ze np.
http://ergast.com/api/f1/2004/1/results.json

chcę wyświetlić listę tych kierowców czyli:
imię nazwisko
(givenName "Michael"
familyName "Schumacher")

itd.

to są linki (powiedzmy u mnie na stronie sobie je wyświetlę)i i po kliknięciu pokazuje się strona (nowy adres url) z danymi szczegółowymi kierowcy,
pytanie jak najlepiej rozwiązywać taki problem?
jedyny sposób dla mnie najprostszy to - parsowanie tego przez php zapis do tabelki i wyświetlenie też po stronie php

z racji, że jest to api zwracające json czy można to zrobić w inny sposób? w sensie - lepiej, myślałem o np. rozwiązaniu tego przez javascript/ajax ale od razu nasuwa mi się problem "rozklikalności" tych danych, czyli ok pobiorę sobie listę kierowców (ajaxem) i teraz zaczynają się schody, musiałbym generować linki do pozostałych informacji (wszystko po stronie js)


czy znacie lepsze rozwiązania takich problemów? jak właściwie powinno korzystać się z api?

Ten post edytował wpaski 18.07.2017, 16:18:03
Go to the top of the page
+Quote Post
leonpro778
post
Post #2





Grupa: Zarejestrowani
Postów: 146
Pomógł: 19
Dołączył: 1.03.2012

Ostrzeżenie: (0%)
-----


API - Application Programming Interface. Czyli na nasze sposób komunikowania się programisty z programem.

Masz całkiem ładne API, które zwraca dane w formacie JSON. PHP obsługuje JSON na tyle, że nie powinno być problemu z wyświetlaniem interesujących Cię danych. Nie za bardzo wiem co chcesz uzyskać korzystając z tego API ale ja (przykładowo) odpytywał bym ajax'em te linki o których piszesz i miałbym zwrócone dane w JSON.
Go to the top of the page
+Quote Post
wpaski
post
Post #3





Grupa: Zarejestrowani
Postów: 206
Pomógł: 6
Dołączył: 25.12.2011

Ostrzeżenie: (0%)
-----


dzięki za wypowiedź,
chodzi o to, że mam przykładowo wyświetlić listę z tymi kierowacami (gdzie imię i nazwisko to klikalny link-odnośnik) i po kliknięciu otworzy się reszta danych na temat danego kierowcy. Wiem jak zrobić przy pomocy bazy danych - zapisu danych do tabelki przy pomocy php i potem ich wyświetlenie. Ale chcę to zrobić powiedzmy samym ajaxem, pytanie czy tak się da i czy można by do tego w ten sposób podejść

Więc odpytam ten json i pobiorę dane do nazwy linku przykladowo
imię nazwisko
Kod
(givenName "Michael"
familyName "Schumacher")


tylko, że co dalej - czy nie pobierając tych danych do tabelki, można by wygenerować odnośniki (id to driverID) i potem po kliknięciu danego odnośnika byłby odpalany kolejny ajax? Czy to jest wykonalne - linki musialbym wygenerowac w javascripcie, więc powiedzmy ze mam juz je w takiej postaci:
mojastrona.pl/kierowcy/michael_schumacher
mojastrona.pl/kierowcy/barrichello
itd.

do tego etapu jakoś to sobie wyobrazam - ale co potem - w jaki sposob otwarty url mojastrona.pl/kierowcy/barrichello ma sobie pobrac reszte danych z tego jsona?
istnieje gdzies cos podobnego juz napisanego?

Ten post edytował wpaski 19.07.2017, 08:24:09
Go to the top of the page
+Quote Post
frydry
post
Post #4





Grupa: Zarejestrowani
Postów: 31
Pomógł: 0
Dołączył: 2.04.2015

Ostrzeżenie: (0%)
-----


W PHP najłatwiej będzie po prostu pobrać ten plik funkcją file_get_contents(). Pobrany tekst przypisujesz do zmiennej i traktujesz funkcją json_decode(). Voila, masz tablicą z danymi.
Go to the top of the page
+Quote Post
wpaski
post
Post #5





Grupa: Zarejestrowani
Postów: 206
Pomógł: 6
Dołączył: 25.12.2011

Ostrzeżenie: (0%)
-----


wiem snitch.gif tak też zrobiłem, ale moje pytanie jest inne i starałem się to opisać wyżej (http://forum.php.pl/index.php?showtopic=256939&view=findpost&p=1219271)

Ten post edytował wpaski 19.07.2017, 08:47:06
Go to the top of the page
+Quote Post
leonpro778
post
Post #6





Grupa: Zarejestrowani
Postów: 146
Pomógł: 19
Dołączył: 1.03.2012

Ostrzeżenie: (0%)
-----


Ja bym zrobił to w ten sposób:

1. Ajaxem wysłał zapytanie o interesującą nas listę kierowców (przykładowo: http://ergast.com/api/f1/drivers/results.json)
2. Odpowiedź zwrotna tego zapytania to lista kierowców w formacie JSON.
3. Z tej listy wybieram sobie potrzebne dane a główną daną jest nazwisko kierowcy (bo tym się buduje zapytanie). Nazwisko kierowcy przekazuję jako parametr do funkcji wywołującej kolejne zapytanie dotyczące szczegółów kierowcy.
4. Odpowiedź tego zapytania odbieram jako JSON i wyświetlam tam gdzie mi się podoba smile.gif

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 05:27