Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] LIMIT wyświetlanych wyników i następne rekordy
Forum PHP.pl > Forum > Przedszkole
arek33
  1. <?php
  2.  
  3. $w = mysql_query("SELECT * FROM t1 ORDER by nazwisko LIMIT 10")
  4. or die('Błąd zapytania.');
  5.  
  6. if(mysql_num_rows($wynik) > 0) {
  7.    echo "<table>";
  8.    echo "<tr>";
  9.    echo "<td>".Lp."."."</td>";
  10.    echo "<td>".Imi&#281;."</td>";
  11.    echo "<td>".Nazwisko."</td>";
  12.    echo "<td>".E."</td>";
  13.    echo "<td>".U."</td>";
  14.    echo "</tr>";
  15.  
  16.    $i = 1;
  17.    while($r = mysql_fetch_array($w)) {
  18.        echo "<tr>";
  19.        echo "<td>".$i++."."."</td>";
  20.        echo "<td>".$r['imie']."</td>";
  21.        echo "<td>".$r['nazwisko']."</td>";
  22.        echo "<td><a href=\"edit.php?a=edit&amp;id={$r['id']}\">E</a></td>";
  23.        echo "<td><a href=\"del.php?a=del&amp;id={$r['id']}\">U</a></td>";
  24.        echo "</tr>";
  25.                
  26.    }
  27.    echo "</table>";
  28.        
  29. }
  30.  
  31. else { echo "Brak danych w bazie. <a href=\"dodaj.php\">Wprowadź</a> dane."; }
  32.  
  33. ?>


Rekordów w tabeli t1 mam 63, ale chcę, aby wyświetlanych było po 10 na stronę, więc w zapytaniu wstawiam LIMIT 10 i gotowe. Ale chciałbym mieć też na dole tej strony numerowanie stron (1,2,3,4,5,6,7,8 itd.) do kolejnych rekordów. Za cholerę nie wiem jak się do tego zabrać. Mógłby mnie ktoś odpowiednio nakierować?
Wicepsik
http://nospor.pl/pager.html
arek33
Niewiele mi to pomogło. Może mógłby ktoś mi pokazać jakiś przykład ...?
Wicepsik
A przeczytałeś artykuł? Ściągnąłeś klase?
slawny
  1. <?php
  2. $adres=$_SERVER['HTTP_HOST'].$_SERVER["PHP_SELF"].'?'.$_SERVER['QUERY_STRING'];
  3. $naStronie = 20;
  4.  
  5. if($_GET['strona'])
  6. {$strona = $_GET['strona'];}
  7. else $strona = 0;
  8. $start = $strona*$naStronie;  
  9.  
  10. $pobranie_danych = mysql_query("Select * from Studenci order by nazwisko LIMIT $naStronie, $start");
  11. $wszystkie = mysql_query("Select * from Studenci");
  12. $size = mysql_num_rows($wszystkie);
  13. echo "Ilość rekordów w bazie $size, ilość stron ".ceil($size/$naStronie).";
  14. while($row = pg_fetch_array($pobranie_danych))
  15.    {
  16.     //wyswietlanie danych
  17.     }
  18.    
  19.    if($strona!=0)
  20.                    {
  21.                        echo "<a  href=http://$adres&strona=".($strona-1).">poprzednia</a> ";
  22.                    }
  23.                    //numery sron
  24.                    for($i=0; $i<ceil($size/$naStronie); $i++)
  25.                    {
  26.                        if($strona==$i) echo " [".($i+1)."]";
  27.                        else echo " <a href=http://$adres&strona=$i>[".($i+1)."]</a> ";
  28.                    }
  29.                    // nastepny
  30.                    if($strona < ceil($size/$naStronie)-1)
  31.                    {
  32.                        echo " <a href=http://$adres&strona=".($strona+1).">nastepna</a> ";
  33.                    }
  34. ?>


stare, ale działające....dostosuj do swojego kodu bo są to wybrane fragmenty całości, ale powinieneś coś wywnioskować.

Pozdrawiam,
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.