Hirdetés

Keresés

Új hozzászólás Aktív témák

  • DNReNTi

    őstag

    válasz laceeeboy #15212 üzenetére

    Nem olyan bonyolult pedig. Amit biker leírt, kicsit kifejtem neked.

    Legyen az oldalad címe: domain.hu/hirek.php
    Kezdjük azzal hogy ellenőrzöd melyik oldalt (lapot) nézed:
    $oldal = isset($_GET['oldal']) ? $_GET['oldal'] : 1;
    Alap esetben (most) a $oldal változó 1 lesz. Azaz az 1. oldalt nézed.

    Az írtad három hírt szeretnél megjelentetni, legyen a legfrissebb elől, ezt tároljuk egy változóban, így később könnyű módosítani.
    Tehát: $hirek_szama = 3;

    Ezen két adat alapján létrehozol egy "léptető" változót.
    $oldal_offest = ($oldal-1) * $hirek_szama;
    Az $oldal-1-re azért van szükség mert különben elcsúszna a lekérdezés. Ezekkel máris egyenesben vagy, minden adat megvan hogy tetszőleges lekérdezést tudj kreálni:
    SELECT * FROM hirek ORDER BY publikalas_ideje DESC LIMIT '$odlal_offset', '$hirek_szama';

    Szintén biker írta: a LIMIT meghatározza honnan, hány rekordot kérsz le.
    Alap esetben ez most 0, 3. Azaz az elejétől 3 db rekord. Magyarul a 3 legfrissebb.
    Eddig gondolom teljesen érthető.

    A léptetés pedig ha eddig értetted már nem okozhat gondot:
    Mivel tudod épp melyik oldalon vagy ($oldal) ennek felhasználásával már gyerekjáték.
    <a href="/hirek.php?oldal=<?php echo $oldal-1; ?>" title="Előző oldal">Előző oldal</a>
    <a href="/hirek.php?oldal=<?php echo $oldal+1; ?>" title="Következő oldal">Következő oldal</a>

    A hivatkozás így pl a : domain.hu/hirek.php?oldal=2 linkre visz, amiből máris jön, hogy a 2. oldalon vagy. A lekérdezés vége így : LIMIT 3, 3 lesz.

    Remélem sikerült érhetően megfogalmaznom és nem írtam hibát, közben nem ellenőriztem magam. :D
    FONTOS: ebben amit leírtam nincs hibakezelés! Csak a működést szemlélteti!

  • biker

    nagyúr

    válasz laceeeboy #15212 üzenetére

    mivel ezt tanulod, nem megoldást adnék, hanem leírást

    a LIMIT után egy tól ig változók használata javasolt esetleg
    aztán url-ben átadod a tól ig változókat, ez ugye első betöltéskor nem létezik, tehát kezelni kell azt is, ha nincs semmi, akkor tól=0 ig=3
    aztán kiteszel egy következő linket ahol paraméter tól=3 ig=3 (mert ugye mettől hány darab)

    Másik, ha teszel lapozót, akkor mondjuk jqueryvel, de ekkor nem tehetsz bele limitet, mindent le kell kérni, betolni a jquerybe, és ott megadni hány darabot jeleníthet meg és hány lapozó legyen

    erre 10000 példa van, akár dynamic table, vagy bármi

Új hozzászólás Aktív témák