Kako napraviti paginaciju?

Pozdrav!

dali mi neko može reći na koji se način pravi paginacija, kako da napravim za ovu skriptu?

ovo je skripta za listu registrovani korisnika, e ja bi htio da na stranici bude do 20 korisnika i da ima link da vodi na drugu stranicu tipa “1.2.3.4…56.57”

Hvala na pomoći!

to se radi obično preko paging-a.
vidi ovo

http://www.php-mysql-tutorial.com/wikis/php-tutorial/paging-using-php.aspx

[quote=""]// if $_GET[‘page’] defined, use it as page number
if(isset($_GET[‘page’]))
{
$pageNum = $_GET[‘page’];
}[/quote]

… and what if $_GET[‘page’] isn’t number? :grem:

Za izbjegavanje SQL injection-a, moze se jednostavno napraviti:

$pageNum = (int) $_GET[‘page’];

Mozda nije lose i validirati da je vece od nule (posto manje od nule nema smisla).

evo našao sam neku skriptu za paginaciju, pa me zanima jel trebam napraviti neku posebnu mysql bazu gdje ce se upisivati broj stranice?

skripta je

[quote=“susok”]evo našao sam neku skriptu za paginaciju, pa me zanima jel trebam napraviti neku posebnu mysql bazu gdje ce se upisivati broj stranice?
[/quote]

???

Mislim da ne shvacas paginizaciju odnosno stranicenje.

Ako SQL upit vraca npr. 153 zapisa, stranicenje to razdjeljuje u stranice, npr. ako zelis imati 10 zapisa po stranici, imas ces 16 stranica (na zadnjoj stranici ce biti 4 zapisa).

Upit radis tako da ti ne vrati svih 153 zapisa, nego - 10. Da bi vratio tocno 10 zapisa koje su ti potrebni, treba znati na kojoj si tocno stranici.

0 - 9 ~ 1. stranica
10 - 19 ~ 2. stranica
20 - 29 ~ 3. stranica

itd.

U MySql-u imas SQL kljucnu LIMIT:

http://php.about.com/od/mysqlcommands/g/Limit_sql.htm

Npr.

SELECT * FROM ‘your_table’ LIMIT 0, 10

vraca zapise od 0-tog do 9-tog (sve skupa 10 zapisa).

Pa tako npr. ako zelis dobiti zapise na 5 stranici, mozes napraviti upit:

SELECT * FROM ‘your_table’ LIMIT 5 * 10, 10

Odnosno, konacno u PHP bi imao rjesenje za upit koji podrzava stranicenje:

$broj_stranice = (isset($_GET[‘broj_stranice’]) && $_GET[‘broj_stranice’] > 0) ? $_GET[‘broj_stranice’] : ‘0’;

$sql = “SELECT * FROM ‘your_table’ LIMIT " . $broj_stranice . " * 10, 10”

imas ovdje dobar tutorijalza paginaciju rezultata iz mysql baze podataka


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja