Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Informacje przez $_GET
Forum PHP.pl > Forum > Przedszkole
VirG
Cześć.

Chciałbym zrobić coś takiego, że wyświetla mi liczbę stron z liczby kolumn/10
Mam na razie taki kod:
  1. <?php
  2. $sql = mysql_query('SELECT * FROM `tabela`');
  3. $co = round(mysql_num_rows($sql)/10);
  4. $query = 'SELECT * FROM `tabela` ';
  5. $zapytanie = mysql_query($query);
  6. ?> <center> <?php
  7. for($w = 1; $w <= $co; $w++) {
  8. if($_GET[link] == $w) {
  9. echo "<b><a href='?link=$w'>$w </a></b>";
  10. }
  11. elseif(!$_GET[link]) {
  12. if($w == 1) echo "<b><a href='?link=$w'>$w </a></b>";
  13. elseif($w >= 2) echo "<a href='?link=$w'>$w </a>";
  14. }
  15. else echo "<a href='?link=$w'>$w </a>";
  16. }
  17. ?>

I to mi wyświetla liczbę stron, lecz nie wiem jak zrobić by na każdej stronie wyświetlało inne informacje
np. 1 strona - od id 1 do 10
2 strona - od 11 do 20
itd.
Nie chcę dawać if($_GET[link] == 1) blablabla
if($_GET[link] == 2) blablabla
itd... tylko jakimś innym kodem co nie będę musiał wypisywać tylko automatycznie będzie wczytywać

(sorki za nazwę tematu biggrin.gif)
IProSoft
Chodzi Ci o paginację, tak?
Polecenia LIMIT znasz?
VirG
poprzedni kod miałem taki:
  1. <?php
  2. $sql = mysql_query('SELECT * FROM `tabela`');
  3. $co = round(mysql_num_rows($sql)/8);
  4. $query = 'SELECT * FROM `tabela` ORDER BY id ASC LIMIT 1, 10';
  5. $zapytanie = mysql_query($query);
  6. while($wynik = mysql_fetch_array($zapytanie)) {
  7. echo $wynik[link]." - ".$wynik[opis]."<br />";
  8. }
  9. ?> <center> <?php
  10. for($w = 1; $w <= $co; $w++) {
  11. if($_GET[link] == $w) {
  12. echo "<b><a href='?link=$w'>$w </a></b>";
  13. }
  14. elseif(!$_GET[link]) {
  15. if($w == 1) echo "<b><a href='?link=$w'>$w </a></b>";
  16. elseif($w >= 2) echo "<a href='?link=$w'>$w </a>";
  17. }
  18. else echo "<a href='?link=$w'>$w </a>";
  19. }
  20. ?>

Lecz właśnie nie wiem jak zrobić by pokazywało na 2 stronie te dalsze... Bo pokazuje to samo, a jak mówiłem nie chcę ciągle dawać
if($_GET[link] == 1) blablabla
if($_GET[link] == 2) blablabla
if($_GET[link] == 3) blablabla
itd
RAV_8
Pokazuje to samo, bo masz m.in. na "sztywno" ustawiony Limit. Dodaj jakieś zmienne w stylu
  1. LIMIT $start , $ilosc_wynikow_na _strone
VirG
No tak ale wtedy będę musiał tymi ifami nawalać i tam zmieniać wartości tych $start i $ilosc_wynikow_na _strone ...
IProSoft
Twój przykład, co i jak musisz dojść samodzielnie:
  1. $strona = (!empty($_GET['link']) ? intval($_GET['link']) : 1);
  2. $sql = mysql_fetch_array(mysql_query('SELECT COUNT(*) AS ile FROM `tabela`'));
  3. $wszystkich = $sql['ile'];
  4. $y = 10;
  5. $stron = round($wszystkich/$y);
  6. $x = $strona*$y - $y;
  7.  
  8.  
  9. $query = "SELECT * FROM `tabela` ORDER BY id ASC LIMIT $x, $y";
  10. $zapytanie = mysql_query($query);
  11. while($wynik = mysql_fetch_array($zapytanie)) {
  12. echo $wynik['link']." - ".$wynik['opis']."<br />";
  13. }
  14. echo '<center>';
  15. /* PAGINACJA */
  16. for($i = 1; $i <= $stron; $i++) {
  17. if($strona == $i) {
  18. echo "<b><a href='?link=$i'>$i </a></b>";
  19. }
  20. elseif(empty($strona))
  21. {
  22. if($i == 1)
  23. {
  24. echo "<b><a href='?link=$i'>$i </a></b>";
  25. }
  26. else
  27. {
  28. echo "<a href='?link=$i'>$i </a>";
  29. }
  30. }
  31. else
  32. {
  33. echo "<a href='?link=$i'>$i </a>";
  34. }
  35. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.