Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Poprawne wytworzenie kolejnych page
Warmix
post
Post #1





Grupa: Zarejestrowani
Postów: 173
Pomógł: 0
Dołączył: 13.06.2011

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


Najpierw przedstawię swój kod PHP. W razie, gdyby coś było nie jasne, to proszę o info, bo to tylko cześć kodu, więc niektóre dane mogą być podane poza obrębem podanego kodu.

  1. $sql = "SELECT player_id FROM player_skills WHERE skillid = $nr";
  2. $wynik = mysql_query($sql);
  3. $num = mysql_num_rows($wynik);
  4.  
  5. $pages = ceil($num/10);
  6. $act_page = isset($_GET['page']) ? $_GET['page'] : 1;
  7.  
  8. if($act_page <= $pages && $act_page >= 0){
  9.  
  10. <p style='font-weight:bold; font-size:20px; text-align:center;'>".$page_name."</p>
  11. <p style='margin-top:-10px; text-align:center;'>
  12. ( ";
  13. for($s=1;$s<=$pages;$s++){
  14. if($act_page == $s){
  15. echo '<b>'.$s.'</b> ';
  16. } else {
  17. echo '<a href="index.php?body=ranks&'.$set.'&page='.$s.'">'.$s.'</a> ';
  18. }
  19. }
  20. echo ')
  21. </p>
  22. <table rules="all" width="250px">
  23. <tr>
  24. <td style="text-align:center; font-weight:bold;">#</td><td style="text-align:center; font-weight:bold;">Nick</td><td style="text-align:center; font-weight:bold;">Level</td>
  25. </tr>';
  26.  
  27.  
  28. $sql = "SELECT player_id, value FROM player_skills WHERE skillid = $nr ORDER BY value DESC";
  29. $wynik = mysql_query($sql);
  30.  
  31.  
  32. $i = 1;
  33. while($wyn = mysql_fetch_assoc($wynik)){
  34. $id = $wyn['player_id'];
  35. $skill = $wyn['value'];
  36.  
  37. $sql2 = "SELECT name FROM players WHERE id = $id";
  38. $wynik2 = mysql_query($sql2);
  39. $wyn2 = mysql_fetch_assoc($wynik2);
  40. $nick = $wyn2['name'];
  41.  
  42.  
  43. $d = $i+(($act_page-1)*30);
  44.  
  45. $color = ($i % 2) ? '#9f9f6b' : '#E3C99B';
  46. <tr>
  47. <td style="color:black;background-color:'.$color.';">'.$d.'.</td><td style="color:black;background-color:'.$color.';"><a style="color:#556B2F;" href="index.php?body=search&char='.$nick.'">'.$nick.'</a></td><td style="color:black;background-color:'.$color.';">'.$skill.'</td>
  48. </tr>
  49. ';
  50. $i++;
  51. }
  52.  
  53. echo '</table>';
  54. }


Problem:
Złe generowanie Nicków oraz Leveli na kolejnych page (2, 3, 4....)

Opis:
Mam sobie stronę z pewnymi danymi. Mając kilkanaście tysięcy rekordów w bazie, nie mogłem wszystkich wyświetlić na jednej stronie. Więc dodałem '&page=...'.
Jeżeli chodzi o pozycję, to działa ona poprawnie... Czyli ID, oznaczone jako "#". Cyfry normalnie przechodzą mi na drugą page, czyli na jednej mam od 1-10, na drugiej 11-20 itd.
Problem pojawią się przy nickach i levelach. A mianowicie Nicki i Levele powtarzają mi się na każdej page... Czyli mam 1 stronę, to mam pozycję 1-Warmix-5. Gdy przejdę do drugiej strony id normalnie się zmieni, ale nick i level już nie. Wynik: 11-Warmix-5.
Już głowię się troszeczkę nad tym i nie mam zielonego pojęcia jak to zrobić, tak więc proszę o pomoc, albo chociaż wskazówki, bo sam nic już nie wymyślę...

Ten post edytował Warmix 7.05.2012, 18:03:09
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To co chcesz zrobić nazywa sie STRONICOWANIE. Poszukaj w necie i na forum bo masa tego jest, a to co ty tutaj pokazałeś ze stronicowaniem ma niewiele wspólnego.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Warmix
post
Post #3





Grupa: Zarejestrowani
Postów: 173
Pomógł: 0
Dołączył: 13.06.2011

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


Ok, dzięki. Teraz już sobie poradzę...
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 Aktualny czas: 20.08.2025 - 07:16