Ajax csak űrlapokkal működik?
Nem kell letiltani. És nem csak űrlapokkal működik. AJAX kérésben azt küldesz, amit akarsz.
A konkrét feladatra:
1. Eltárolod egy JS változóban, hol tartottál.
2. A "Több" gomb ez alapján lekéri a következő 10 elemet AJAX-al, majd frissíti az 1.-ben említett változót.
3. A kérésben tehát nyilván szerepel legalább egy offset vagy egy oldalszám, ez alapján adja vissza a PHP a megfelelő elemeket.
Hát egyenlőre még csak ilyen:
<?php
$num = count($table);
$n = $num-1;
$count = 10;
for (
$num = count($table),
$n = $num-1,
$count = 10;
$n >= 0 && $num - $n <= $count;
$n--;
){
?>
//Posztok megjelenítése
<?php
}
?>
Elég zavaros már a ajaxod php feldolgozó része is. Javascripttel legalább a pozíciót át kéne adni a php-nek, hogy tudja honnan kellene folytatni a megjelenítést. Ha nem adsz át semmit, akkor legalább session-ben tárolj egy countert, amit a php emelgethet.
pl:
js (jQueryvel):
$('#tobb').click( function() {
$.ajax({
url: "feldolgozo.php",
datatype: "html",
success: function(adat) {
$("#listakontener").html(adat);
}
});
});
feldolgozo.php:
<?php
session_start();
$from = $_SESSION["utolsobejegyzes"];
... adatok lekérdezése "LIMIT $from, 10" a végén ...
... adatok kiolvasása és kijelzése html struktúrában, amit majd visszakap a script ...
?>
Nagyjából. Nem írtam le mindent, dolgozz meg érte te is.
A másik módszer, hogy a több gomb-ban elrejtesz egy értéket pl data-lastnum="10", és az ajax híváskor get-ként vagy post-ként a session helyett ezt adod át a feldolgozónak ( $("#tobb").data("lastnum") ). Ilyenkor figyelni kell, hogy a gomb ezen értéke minden meghíváskor (adatkijelzéskor) módosuljon megfelelően.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!