Cytat(mario @ 2005-05-07 17:49:21)
<?php
$zapytanie = \"SELECT * FROM tabela\";
$max_poz = 10;
echo \"<p align=center>\";
// jeśli wchodzimy bez parametru $page pierwsza strona
// ustawia się jako pierwsza i pętla startuje od cyfry 0
If ($page==\"\")
{
$page=1;
$start=0;
}
else
// jeśli wchodzimy z parametrem pierwsza strona
// ustawia się z podanego parametru $page i pętla startuje od parametru $page
{
$start=$page*$max_poz;
$start=$start-$max_poz;
}
$stron = ceil ($rekordy/$max_poz); // instrukcja ceil zaokrągla ułamki w górę do pełnej liczby
// wykonujemy pętelki z podziałem na odnośniki do poszczególnych stron
If ($page>1)
{
$strona=$page-1;
echo \"<a href='index.php?page=$strona'>poprzednie</a> \"; }
For ($index=1;
$index <= $stron;
$index++)
{
If (($page==$index) and ($stron!=1))
{
echo\"<font color=red><b>$index</b></font> | \";
$next=$page+1;
}
elseif ($stron!=1)
echo\" <b><a href='index.php?page=$index'>$index</a></b> | \";
If (($page>0) and ($index==$stron) and ($page<$stron))
echo \" <a href='index.php?page=$next'>następne</a>\"; }
// pobierasz sobie z bazy dane w zakresie oznaczonym $start, $max_poz (czyli z aktualnej strony na której jesteś)
$zapytanie = \"SELECT * FROM tabela LIMIT $start, $max_poz\";
{
$zmienna = $r [zmienna];
......
......
}
?>
@mario: Mam jedno pytanie. Użyłeś na samym początku skrytpu kodu:
<?php
$zapytanie = \"SELECT * FROM tabela\";
?>
do pobrania ilości wszystkich wierszy. A nie szybciej będzie jak zrobisz tak:
<?php
$zapytanie = \"SELECT Count(primary key) FROM tabela\";
?>

?
Drugie pytanie: czy da się skrypt przerobić tak, żeby za każdym razem wywoływania samego siebie nie sprawdzał ilości rekordów? Bo po co cały czas robić to samo?
Pozdrawiam
PS. Jestem bliski rozwiązania tego problemu ale proszę o odpowiedź
EDIT:
------
Można to zrobić jedynie przez przekazanie wartości za pomocą GET, ale nie wiemy jakiego wyniku się spodziewamy więc jest to niebezpieczne. Dlatego moim zdaniem lepiej zliczać ilość wierszy za każdym razem.
Co o tym myślicie?