Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][Mysql] Podział rekordów na strony
Forum PHP.pl > Forum > PHP
Dawior
Witam jak zrobić podział rekordów na strony?. Bardzo proszę o odpowiedź z góry dzięki.
nospor
bylo na forum nie raz. to sie nazywa stronicowanie - poszukaj
W moim podpisie tez masz klase do tego
Dawior
Znalazłem takie coś:
  1. <?
  2. include 'conn.php';
  3. $limit =  1; //Liczba newsów na jednej stronie
  4.  
  5. $strona = $_GET['str']; // Pobranie numeru strony
  6.  
  7.  
  8. if (!isset($strona)) {
  9.    $limit1 = 0;
  10.    $limit2 = $limit;
  11. } else {
  12.    $limit1 = $limit * $strona - $limit;
  13.    $limit2 = $limit;
  14. }
  15.  
  16. //Definicja zapytania
  17. $zapytanie = "SELECT * FROM news ORDER BY id DESC LIMIT $limit1,$limit2";
  18.  
  19.  
  20. if ($r = mysql_query ($zapytanie)) {
  21.  
  22.    //Odczytywanie w wyswietlenie kolejnych rekordow.
  23.    while ($wiersz = mysql_fetch_array($r)) {
  24.  
  25.                print '<table border="0" width="500" cellpadding="0" cellspacing="0" align="center">
  26. <tr><td class="news"><center><b>'.$wiersz['tytul'].'</b></center></td></tr>
  27. <tr><td class="newstlo">';
  28. echo ''.BBCode($wiersz['opis']).'<br>';
  29. echo '<div class="nesdol">
  30.  
  31. </div>
  32. </td></tr>
  33. <td class="newsdol"><a href="/'.$row['id'].'-'.namen($row['tytul']).'.html">Zobacz więcej...</a></td>
  34. </table><br><br>';
  35.                
  36.    }
  37.  
  38. } else {
  39.    die ('<p>Zapytanie nie zosta?o wykonane, bo <b>' . mysql_error() . "</b>. Zapytanie: $zapytanie.</p>");
  40.  
  41. }
  42.  
  43. echo "Strony: ";
  44. list($ile)=mysql_fetch_row(mysql_db_query("data","SELECT count(*) FROM news"));
  45.  
  46. $liczba_stron = $ile / $limit;
  47. $liczba_stron = ceil($liczba_stron);
  48.  
  49. for ($v = 1; $v <= $liczba_stron; $v++) {
  50.  
  51.    if ($liczba_stron == 1) {
  52.    echo " $v";
  53.    } else {
  54.    echo "<a href=\"index.php?str=$v\" title=\"Strona $v\">$v</a> ";
  55.    }
  56. }
  57. echo "</div>";
  58. {
  59. }
  60.      ?>


Ale wyświetla podwójnie obrazek: http://img208.imageshack.us/img208/8048/95117499.jpg
Dawior
Teraz mam takie coś:
  1. <?
  2. include 'conn.php';
  3. $start = $_GET['strona'];
  4. $na_stronie = 10;
  5.  
  6. $wykonaj=mysql_query("SELECT * FROM news");
  7. $znaleziono=mysql_num_rows($wykonaj);
  8. if($znaleziono>$na_stronie) {
  9.    print '<center>Strona ';
  10. for($i=0; $i<ceil($znaleziono/$na_stronie); $i++)
  11.  print '<a href="index.php?strona='.($i*$na_stronie).'">'.($i+1).'</a> | ';
  12. }  
  13. print '</center>';
  14.  
  15. $query = "SELECT * FROM news LIMIT ".($start).",".$na_stronie."";
  16. $result = mysql_query ($query);
  17.        while ($row = mysql_fetch_array($result))
  18.        {
  19. echo '<table border="0" width="500" cellpadding="0" cellspacing="0" align="center">
  20. <tr><td class="news"><center><b>'.$row['tytul'].'</b></center></td></tr>
  21. <tr><td class="newstlo">';
  22. echo ''.$row['opis'].'<br>';
  23. echo '<div class="nesdol">
  24. </div>
  25. </td></tr>
  26. <td class="newsdol"><a href="/'.$row['id'].'-'.namen($row['tytul']).'.html">Zobacz więcej...</a></td>
  27. </table><br><br>';
  28. }
  29.  
  30. ?>


ale się wyświetla taki błąd: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\Program Files\WebServ\httpd\engine\podzial.php on line 17
piotrooo89
jak chcesz coś łatwego:

http://olaszewski.com/2009/04/01/stronicowanie-version-2/
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.