Witam.
Na początku zaznaczę, że nie byłem pewny czy umieścić ten temat w dziale PHP czy w Webmasteringu, jednak poruszany przeze mnie wątek dotyczy też frontendu i webdevu jako całości, dlatego zdecydowałem się na ten dział.
Chciałbym się zapytać w jaki współczesny sposób zapewnić komunikację w obydwie strony pomiędzy backendem napisanym w języku php, a frontendem przy użyciu czystych technologii webowych, tj html, css, js, php, mysql, czyli BEZ frameworków (pomijam tutaj dyskusję, czy warto obecnie tworzyć aplikacje webowe bez frameworków, ale powiedzmy, że jestem początkujący i chcę póki co nauczyć się czystych technologii webowych)?
Wiem, że dawno temu strony w php pisało się w taki sposób, że po prostu "mieszało się" kod html z php w jednym pliku, poprzez dodawanie w kodzie html wstawek:
<?php ?>
jednak z tego co zdążyłem wyczytać, jest to obecnie bardzo zła praktyka i powinno się dążyć do całkowitej separacji frontendu od backendu. Przeczytałem na necie, że obecnie taką komunikację pomiędzy frontem i backiem powinno się zapewniać za pomocą API i przesyłania danych za pomocą formatu JSON. Zacząłem szukać na necie przykładowych aplikacji i znalazłem na Youtube prostą apkę webową typu CRUD, która jest napisana w czystych technologiach webowych. Do wymiany komunikacji pomiędzy frontem a backiem służy format JSON - od strony frontu za pomocą JS i metody fetch() dane są odbierane z backendu i z powrotem odsyłane. Poniżej wrzucam link do filmu prezentującego apkę:
oraz do repo na Githubie z kodem apki:
https://github.com/hilalahmad32/php-javascript-crud-with-fetch-api/tree/master
Chciałbym się zapytać, czy ktoś mógł na szybko przejrzeć kod na repo i napisać, czy taki sposób komunikacji pomiędzy frontendem a backendem jest ok?
Znam już dobrze JS i powoli zaczynam się uczyć php i później chciałbym zrobić jakieś mini projekty, aby poćwiczyć php i js, oraz które potem mógłbym wrzucić na swojego githuba jako portfolio, jednak do tej pory nie wiem za bardzo jak połączyć frontend z backendem. Powoli zaczynam "czuć" ideę API i wysyłania informacji za pomocą formatu JSON, ale nadal do końca nie wiem jak to powinno się zrobić, gdyż na YT znajduje różne tutoriale i różne osoby robią to w nieco inny sposób i dlatego prosiłbym kogoś o poradę, jak to powinno się robić.
Znalazłem jeszcze na YT dwa poniższe, krótkie filmiki, pokazujące jak odbierać dane z php po stronie frontu oraz jak wysyłać dane z frontu do php, też wszystko za pomocą JSONa i fetch API:
Odbieranie danych z php:
Wysyłanie danych do php:
I tutaj też prosiłbym o opinię, czy taki sposób jest ok? Może nie tyle, że jest to sposób idealny, ale bardziej mi chodzi tutaj o poprawny kierunek w którym powinienem iść, aby nauczyć się komunikacji pomiędzy frontendem z backendem.