Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Stronnicowanie
MOniToR
post 14.01.2005, 17:55:50
Post #1





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


Szukałem na forum, jednak nie potrafiłem tego odpowiednio wykorzystać. Obecne mam takie porcjowanie:
  1. <?php
  2.  
  3. $porcja=10;
  4. $wiersz=0+$dawka;
  5. $sqlcmt = &#092;"select * from comments where art_id='$id' AND type_id='$type_id' ORDER BY comment_id limit $wiersz, $porcja\";
  6.  $resultcmt = mysql_query($sqlcmt);
  7.  
  8.  
  9. $sql1 = &#092;"select * from comments where art_id='$id' AND type_id='$type_id'\";
  10. $result1 = mysql_query($sql1);
  11. $vol = mysql_num_rows($result1);
  12.  
  13. $r=$wiersz-$porcja;
  14. $f=$wiersz+$porcja;
  15. if($r >= 0){
  16. echo &#092;"( <a href=$strona&dawka=$r>Poprzednia strona</a> )  \";
  17. }
  18. if($f < $vol){
  19. echo &#092;"( <a href=$strona&dawka=$f>Nastepna strona</a> )\";
  20. }
  21.  
  22. ?>

Chciałbym aby wyświetlała mi się lista stron( 1 2 3 itd.) . Jak to zrobić? ;> Prosze o pomoc.


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 16)
Kuziu
post 14.01.2005, 18:03:47
Post #2





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. $per_page // ile newsów na 1 stronie
  4.  
  5. $sql    =&#092;"SELECT count(news_id) FROM news\";
  6. $result    =@mysql_query($sql,$connection) or die(&#092;"Wykonanie zapytania niepowiodło się\");
  7. $ilosc    =mysql_result($result,0,&#092;"count(news_id)\");
  8.  
  9. $all=ceil($ilosc/$per_page);
  10. echo(&#092;"Przejdź do strony:<br>\");
  11. for($i=0;$i<$all;$i++){
  12.   $tmp=$i+1;
  13.   echo(&#092;"<a href='index.php?page=$tmp'> $tmp </a>\");
  14. }
  15.  
  16. ?>


Ten post edytował Kuziu 14.01.2005, 18:04:14


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
MOniToR
post 14.01.2005, 18:06:39
Post #3





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


co robi count() ? i co zawiera $i ? Bo musze przecierz jeszcze pobrać dane z bazy ;X

Ten post edytował MOniToR 14.01.2005, 18:08:09


--------------------
Go to the top of the page
+Quote Post
Kuziu
post 14.01.2005, 18:07:59
Post #4





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


zlicza ilość wpisów w tabeli ... w tym wypadku ilość newsów ...

Ten post edytował Kuziu 14.01.2005, 18:08:21


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
MOniToR
post 14.01.2005, 18:08:59
Post #5





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


No to fajnie zlicza mi ale jak mam zrobić aby mi wyśiwietliło okreslone dane?


--------------------
Go to the top of the page
+Quote Post
Kuziu
post 14.01.2005, 18:11:55
Post #6





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


określone tzn. questionmark.gif


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
Indianin
post 14.01.2005, 18:51:31
Post #7





Grupa: Zarejestrowani
Postów: 247
Pomógł: 0
Dołączył: 19.04.2003
Skąd: Hamburg / Darlowo

Ostrzeżenie: (0%)
-----


Mysle ze chodzi a tresc newsow itp .
Go to the top of the page
+Quote Post
kramot
post 14.01.2005, 19:55:23
Post #8





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 11.01.2005

Ostrzeżenie: (10%)
X----


Postanowilem dolaczyc sie do pytania. Kod uzytkownika KUZIU znakomicie dzieli ilosc wynikow zapytania przez $per_page i wyswietla linki do podzielonych stron.
Moje pytanie jest nastepujace: Jak sprawic zeby wyciagniete z bazy dane wyswietlaly sie na stronie w danej ilosci ($per_page)?
Probowalem z petla while ale moje proby spelzly na niczym dlatego pisze. Wielkie dzieki za pomoc. Pozdrawiam.
Go to the top of the page
+Quote Post
MOniToR
post 14.01.2005, 21:58:06
Post #9





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


Cytat(Kuziu @ 2005-01-14 19:11:55)
określone tzn. questionmark.gif

np. dane z 4 strony. Stronnicowanie jest mi potrzebne w systemie komentarzy.


--------------------
Go to the top of the page
+Quote Post
Kuziu
post 15.01.2005, 12:34:38
Post #10





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. if(!$page){$page=0;}else{$page--;} // Jeśli nie zostala określona strona to wyświetl pierwszą (zerową) jeśli jest to $page=$page-1;
  4.                     
  5. $od=$page*$per_page; // od ktorego news'a zacząć = strona*ilosc_na_stronie
  6.                 
  7. $sql=&#092;"SELECT * FROM news ORDER by time DESC LIMIT $od,$per_page\";
  8. $result    =@mysql_query($sql,$connection) or die(&#092;"Wykonanie zapytania niepowiodło się\");
  9.     
  10. while($row = mysql_fetch_array($result)){
  11.   $news_id = $row['news_id'];
  12.   $autor     = $row['autor'];
  13. // i tak dalej pobierając wszystkie dane ...
  14.   echo(&#092;"Treść newsów/komentarzy\"); // Wyświetlanie
  15. }
  16.  
  17. ?>


Ten post edytował Kuziu 15.01.2005, 12:35:34


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
Kermit
post 16.01.2005, 19:09:43
Post #11





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 14.01.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2. include(&#092;"connect.php\");
  3. $ok = mysql_select_db(&#092;"test\");
  4. if (!$ok) die(&#092;"dupfffa\");
  5.  
  6. if(!$page){$page=0;}else{$page--;} // Jeśli nie zostala określona strona to wyświetl pierwszą (zerową) jeśli jest to $page=$page-1;
  7.  
  8. $per_page=2;  
  9. $od=$page*$per_page; // od ktorego news'a zacząć = strona*ilosc_na_stronie
  10.  
  11. $sql=&#092;"SELECT tytul, data FROM news ORDER by data DESC LIMIT $od,$per_page\";
  12. $result=@mysql_query($sql) or die(&#092;"Wykonanie zapytania niepowiodło się\");
  13.  
  14. while($row = mysql_fetch_array($result)){
  15. echo (&#092;"$row[tytul]<BR> $row[data]<br>\"); // Wyświetlanie
  16. }
  17.  
  18. $sql1=&#092;"SELECT count(id) FROM news ORDER by data DESC LIMIT $od,$per_page\";
  19. $result1=@mysql_query($sql1) or die(&#092;"Wykonanie zapytania niepowiodło się\");
  20. $ilosc =mysql_result($result1,0,&#092;"count(id)\");
  21. $all=ceil($ilosc/$per_page);
  22. echo(&#092;"Przejdź do strony:<br>\");
  23. for($i=0;$i<$all;$i++){
  24.  $tmp=$i+1;
  25. echo(&#092;"<a href='przekier.php?page=$tmp'> $tmp </a>\");
  26. }
  27. ?>


Mam taki skrypt. Dzieli mi on newsy na 4 strony, lecz obojętnie na którą wejdę zawsze mam te same :/. Co jest źle?

Kermit.

Ten post edytował Kermit 16.01.2005, 19:14:07
Go to the top of the page
+Quote Post
Kuziu
post 16.01.2005, 20:57:38
Post #12





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


a zobacz czy zmienna $page ma jakąś wartość ... może musisz użyć

  1. <?php
  2.  
  3. $page = $_GET['page'];
  4.  
  5. ?>


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
Kermit
post 16.01.2005, 21:04:57
Post #13





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 14.01.2005

Ostrzeżenie: (0%)
-----


Dzięki działa biggrin.gif.

Kermit.
Go to the top of the page
+Quote Post
MOniToR
post 17.01.2005, 14:43:43
Post #14





Grupa: Zarejestrowani
Postów: 182
Pomógł: 2
Dołączył: 16.11.2003
Skąd: Wrocław / Skokowa

Ostrzeżenie: (10%)
X----


A mi nie do końca działa :/ Lista stron pojawia mi sie tylko na pierwszej stronie, na pozostałych mam napis 'przejdz do strony' ale bez linków do stron :/

// to pomoże mi ktoś? co jest w tym złego, że wysietla mi liste tylko an pierwszej stronie? :
  1. <?php
  2. $sql1 = &#092;"select count(comment_id) from comments where art_id='$id' AND type_id='$type_id' ORDER BY comment_id LIMIT $od,$per_page\";
  3. $result1=mysql_query($sql1) or die(&#092;"Wykonanie zapytania niepowiodło się\");
  4. $ilosc =mysql_result($result1,0,&#092;"count(comment_id)\");
  5. $all=ceil($ilosc/$per_page);
  6. print(&#092;"<p align=\"center\">\");
  7. echo(&#092;"Przejdź do strony:<br>\");
  8.  
  9. for($i=0;$i<$all;$i++){
  10. $tmp=$i+1;
  11. echo(&#092;"<a href=\"$strona&page=$tmp\"> $tmp </a>\");
  12. }
  13. print(&#092;"</p>\");
  14. ?>


Ten post edytował MOniToR 17.01.2005, 22:36:06


--------------------
Go to the top of the page
+Quote Post
-Guest-
post 3.02.2005, 12:57:59
Post #15





Goście







Sorry że odświerzam, ale ten skrypt mi jest bardzo potrzebny a mam ten sam problem co MOniToR. Na pierwszej stronie jest wszystko ok, a na drógiej tez mi sie wyświetlają rekordy z bazy, ale linków do podstron juz nie ma a na ich miejsce pojawił się błąd:

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 10 in C:\Program Files\WebServ\httpd-users\mycms\include\hehe.php on line 50

a linia 50 wygląda tak:

$ilosc =mysql_result($result1,0,"count(id)");


Pozdrawiam
level
Go to the top of the page
+Quote Post
Kuziu
post 3.02.2005, 22:00:37
Post #16





Grupa: Zarejestrowani
Postów: 743
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Toruń

Ostrzeżenie: (0%)
-----


BO nie masz nic w bazie danych ...


--------------------
Słońce zachodzi ... kolejna noc nadchodzi ...
Go to the top of the page
+Quote Post
-level-
post 3.02.2005, 22:42:07
Post #17





Goście







No problem był właśni w tym że miałem...
Jednak problem już rozwiązałem, linika :

$sql1="SELECT count(id) FROM news ORDER by data DESC LIMIT $od,$per_page";

powinnna wyglądać tak:

$sql1="SELECT count(id) FROM news ORDER by data DESC";


Pozdrawiam
level
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 04:29