Sziasztok!
Adott egy termék adatbázis amiből az adatokat kiolvasva egy táblázat formájában jelennének meg. A táblázat datatables-el van még kombinálva.
A php mögött smarty van ahol is egy foreach függvénnyel listázom ki a tömb adatait.
Valami hasonló képen:
{foreach from=$ItemsList item=$il}
{$il.itemno}
{$il.itemname}
{$il.clientname}
{/foreach}
A termékeknél kb. 8-10 ezer sorról beszélünk jelen pillanatban. A probléma az, hogy mire végigmegy a forech az összes soron az kb. 20-30 másodperc a legjobb esetben is.
A kérdésem, hogy hogyan lehetne azt megoldani, hogy gyorsan jelenjenek meg az adatok a táblázatban még akkor is ha nagyobb mennyiségű adatról van szó? Bár véleményem szerint ez még nem súrolja a sok adatmennyiség fogalmát sem.
- 1228 megtekintés
Hozzászólások
Keszits lapozot.
- A hozzászóláshoz be kell jelentkezni
Van hozzá. A datatables-el van készítve. De először beadja az egész listát egészen hosszan majd amikor végigtöltötte a listát utána jön csak be a táblázat úgy ahogyan kell lennie.
- A hozzászóláshoz be kell jelentkezni
Akkor nincs hozzá. :)
- A hozzászóláshoz be kell jelentkezni
Akkor az nem szerver oldali lapozó...
Kritériumok:
- adatbázis szervertől is csak azt a 20-50 sort kapd vissza, ami kell
- a table html részben ne legyen soha 20-50-nél több tr /tr.
Az utólagos js/jquery mókák mind lassúak.
- A hozzászóláshoz be kell jelentkezni
Ezekszerint kliens oldali js lapozót használsz.
Keresd rá a datatables szerver oldali lapozásra.
Ha kell adok linket.
pch
--
http://www.buster.hu "A" számlázó
--
- A hozzászóláshoz be kell jelentkezni
Szia,
Smarty miért kell ehhez? Fölöslegesnek tartom az adatokat még Smarty -val is áttekerni.
Ha úgy is datatables-el jelentíted meg, és ha datatables alatt ugyanazt értjük....
(datatables mint jquery plugin)
JSON ajax hívás után adatok mehetnek datatables -be.
https://datatables.net/reference/option/ajax#top
- A hozzászóláshoz be kell jelentkezni
Bocsi az előző hozzászólásomért, a kritériumok közé ez is simán belefér: ajax-szal töltött oldal.
- A hozzászóláshoz be kell jelentkezni