Jak dodać liczbę stron za pomocą PHP?


(Weak.) #1

Kto mnie nakieruje co tutaj jest źle? Chcę żeby wyświetlało 20 wyników na stronę i pod wynikami pisało strony: 1 2 3 4 5 itd
Kod PHP


(Fizyda) #2

Po co obliczasz numery elementów w if’ie do tego źle?

if (!isset($strona)) {
    $limit1 = 0;
    $limit2 = $limit;
} else {
    $limit1 = $limit * $strona - $limit;
    $limit2 = $limit;
}

Nie lepiej zrobić to raz a dobrze?

$limit =  20;
$strona = 0;

if (isset($_GET['str']))
	$strona = $_GET['str'];

$limit1 = $strona * $limit;
$limit2 = $limit1 + $limit - 1;

Reszta kodu odpowiedzialna za paginację wygląda poprawnie - podkreślam wygląda.

Uważaj na mój kod, może zawierać błędy bo pisałem z palca.


(Weak.) #3

Tutaj nie powinno być tak?
$strona = $_GET[‘str’];
Bez tego znacznika wywala stronę.
Tak czy inaczej strony nadal nie pokazują się.
I po co obliczam w if’ie? Bo dopiero się uczę tego wszystkiego


(Fizyda) #4

Tak powinien być średnik w tej linijce, najwidoczniej pora na drugie śniadanie skoro zjadam już kod :wink:

Pokaż na sreenie co działa i jak działa albo daj linka bo interpretera w oczach to jeszcze nie mam :stuck_out_tongue: a opiś nie działa niewiele mówi.


(Weak.) #5

http://rankme.weak.pl/czas.php Tutaj z tym moim kodem.
http://rankme.weak.pl/czas2.php Tutaj z Twoim


(Fizyda) #6

Zauważ że nie jest w ogóle wykonywany ten fragment kodu odpowiedzialny za wyświetlenie paginacji. Odpowiedź czemu tak się dzieje znajdziesz w logach. Ja zgaduję że problemem jest używanie funkcji mysql_db_query która jest przestarzała i możliwe że nie jest obsługiwana przez wersję php która jest zainstalowana na serwerze. Jest też opcja że, źle napisałeś zapytanie (z dobrej tabeli pobierasz dane?) ale ewentualne informacje tak jak wspomniałem znajdziesz w logach (lub włącz wyświetlanie błędów na stronie).


(Weak.) #7

Fatal error: Uncaught Error: Call to undefined function mysql_fetch_row() in /home/egzekuto/domains/rankme.weak.pl/public_html/czas.php:92 Stack trace: #0 {main} thrown in /home/egzekuto/domains/rankme.weak.pl/public_html/czas.php on line 92

Kod: list($ile)=mysql_fetch_row(mysql_db_query(“rankme”,“SELECT count(*) FROM connected”));

Co tu może być źle? Dane są poprawne. I wersja php 5.6 więc powinno pójść.


(Fizyda) #8

No to się zdziwiłem teraz i szczerze mówiąc nie wiem czemu nie ma funkcji mysql_fetch_row() ta powinna być, ale spróbuj może użyć mysqli_fetch_row() być może na serwerze jest wyłączony stary moduł MySQL, jeśli tak to nie będziesz mógł użyć też drugiej funkcji mysql_db_query().