ugrás a tartalomhoz

nagy lista tobb oldalra

montressor · 2005. Május. 9. (H), 15.57
Hali!

Egy lekerdezes eredmenye bazi nagy adathalmazt ad vissza. Szeretnem megvalositani az x rekord egy oldalon dolgot. Hogy szoktak ezt megvalositani? Eloszor lekerik az egesz listat, majd a $eredmeny (=mssql_fetch($keres)) valtozot adjak at oldalrol oldalra, vagy esetleg megvalosithato, hogy mindig csak annyit kerdezek az sql szervertol amennyit meg akarok jeleniteni?
koszi
 
1

Ahogy én csinálnám

Poetro · 2005. Május. 9. (H), 16.25
Ahogy én csinálnám, és ahogy a drupal csinálja.
Definiálsz egy page változót, vagy ami neked megfelelő (akár from, to).
Ha nincs megadva, és minden esetben lekérdezed az eredményeid számát.
Lekérdezed az eredményeket, kezdve a from-tól a to-ig. Page változó esetén pedig a from és a to értékeket te számolod ki az elemszám, és az egy oldalon meghatározott elemek függvényében.
--------
Poetro
2

select from to?

montressor · 2005. Május. 9. (H), 16.51
A lekerdezesnek hogy mondom meg hogy from to?
3

[code]SELECT * FROM `tabla`

kriz · 2005. Május. 9. (H), 16.59
SELECT * FROM `tabla` WHERE 1 LIMIT from,elemek_szama

pl: SELECT * FROM `tabla` WHERE 1 LIMIT 0,10
4

ADODB_Pager

Török Gábor · 2005. Május. 9. (H), 17.19
Ha módodban áll egy külső kódtárat is felhasználni, javaslom az ADODB Pager objektumát, amelynek átadod a teljes eredményhalmazra vonatkozó lekérdezést, valamint az egy oldalra eső találatok számát, és automatikusan legenerálja a továbbiakat. Kb. kódban ilyen egyszerű:

require_once('adodb.inc.php');
require_once('adodb-pager.inc.php');
session_start();

$dsn = 'mssql://juzer:jelszo@host/adatbazis';
$db = ADONewConnection($dsn);
$query = 'select * from tabla";

$pager = new ADODB_Pager($db, $query);
$pager->Render($rows_per_page = 10);
--
slink
http://20y.hu/
6

koszi

montressor · 2005. Május. 10. (K), 14.40
koszi mindenkinek, atnyalazom oket
5

Elmész ide

PiG · 2005. Május. 9. (H), 17.50
http://www.phpclasses.org/

a keresőjébe beírod: pager ->egy halom lapozót találsz. Én is innen szedtem, amit általában használok

P][G