PHP-AJAX táblázat frissítés
2017-05-28T23:00:30+02:00
2017-05-29T17:17:17+02:00
2022-08-10T16:25:29+02:00
gerixxx
Sziasztok!

Ahogy a téma is elárulja, van egy HTML táblázatom és van egy <select> tag, ami alapján töltődne be az annak megfelelő táblázat egy SQLite adatbázisból. Érdemben ez egy naptár lenne és az <option> tagok az egyes hónapok lennének, ehhez kellene az adott táblázatnak betöltődnie/frissülnie amikor más hónapot választunk ki (onchange esemény).
Úgy gondolom, hogy ezt AJAX-szal lenne célszerű kivitelezni. A PHP kód az AJAX hívást követően meg is kapja POST-tal az adott hónap számát, de itt akadok el... Ennek a megvalósításához szeretnék segítséget kérni (magára az elvre lenne szükségem), hogy hogyan tudom csak magát a táblázatot újratölteni az oldal újratöltése nélkül vagy egyáltalán hogy lehetne ezt kivitelezni?

Köszönöm szépen a segítséget!
Mutasd a teljes hozzászólást!
1. megoldás: a PHP fájlban megcsinálod a html-ben megformázott táblázatot, és azt adod vissza a POST eredményeként, a kliensoldalon pedig egyszerűen felülírod a DOM-ban a táblázatot a frissen kapottal. Ez az egyszerűbb megoldás.
2. megoldás a szebb: a PHP fájlban valahogy sorosítva (pl. JSON) visszaadod az összes szükséges adatot, és a kliensen az eredmény alapján JS-ből felépíted a táblázatot.

Mivel kódot nem írtál, nem látjuk, hogy alapból hogyan építed fel először a táblázatot. Ha ezt egy JS kód csinálja, akkor egyszerűen ugyanazt a függvényt hívd meg a megfelelő adatokkal inicializálva újra, amint megérkezett a response. Ha a táblázatot szerveroldalon raktad össze, akkor használd az első megoldást. Posztolj kódot, ha elakadsz, akkor tudunk többet segíteni.
Mutasd a teljes hozzászólást!

  • Köszi szépen a választ! :)
    Őszintén szólva nem vagyok híve a frontend oldali kódolásnak, úgyhogy szerintem mindenképp az 1-es megoldás lesz a célravezető.
    Holnap visszajelzek, hogy mire jutottam.
    Mutasd a teljes hozzászólást!
  • Ez pedig pont egy olyan feladat, amit a leginkább költséghatékonyan a kliensen lehet megoldani, hiszen
    1. a táblázat struktúrája ha nem változhat, a frissítés előtt már rendelkezésre áll és fel van építve a DOM-ban, csak az értékeket kell benne megváltoztatni;
    2. a DOM manipulálására tipikusan alkalmasabb a JS, mint a szerveroldal (hiszen eredendően erre találták ki);
    3. a markup-ot felesleges átküldeni HTTP-n, a küldött adatmennyiség jelentős részét le lehet spórolni JSON-nel.
    Mutasd a teljes hozzászólást!
  • Van még mit csiszolni nálam ezen a téren.

    Mindenesetre most sikerült összehozni a dolgot és sokat tanultam vele. Gyakorlatilag kiszeparáltam egy külön PHP fájlba magát a szerver oldali kódot, az index.php-ban szinte csak a HTML (vagy pár statikus adat) maradt, létrehoztam egy DIV-et, amibe betöltöttem a másik PHP fájl által legenerált táblázatot, melyet a SELECT változásakor egy AJAX hívás hatására dob vissza.

    Köszönöm szépen a segítségedet!
    Mutasd a teljes hozzászólást!
  • Akkor most próbáld meg elsajátítani az MVC alapjait is 
    Mutasd a teljes hozzászólást!
abcd