Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]problem z paginacją
Forum PHP.pl > Forum > Przedszkole
Silny
Witam, mam kod do pobierania artykułów, i chce zrobić do tego paginację, ale w ogóle mi nie wychodzi, cały czas coś sie psuje... próbowałem ze sposobem nospora ale mi nie wyszło, oto kod:
  1. <?php
  2.  
  3. $lang = $lang['all_articles'];
  4.  
  5. $liczRekordy = mysql_num_rows(mysql_query("SELECT autor FROM articles"));
  6. if ($liczRekordy > 0) {
  7. echo '<center><font size="5"> '.$lang.' '.$liczRekordy.' </font></center>';
  8. } else {
  9. echo '<center><font size="5">Nie mamy artykułów w bazie.</font></center>';
  10. }
  11. $sql = "SELECT tytul, autor, data FROM articles";
  12. $query = mysql_query("SELECT tytul, autor, data FROM articles ");
  13. $result = mysql_query($sql);
  14.  
  15. ?> <div id="right_box">
  16. <h1>Artykuły</h1>
  17. <?php
  18. while($row = mysql_fetch_array($result))
  19. {
  20. ?>
  21. <div id="articles_view">
  22. <h3><a href="view_articles.php" class="no"><?php echo $row['tytul']; ?></a></h3>
  23. Dodał: <a href="#"><?php echo $row['autor']; ?></a>, <?php echo $row['data']; ?>
  24. </div>
  25. <?php
  26. }
  27. ?>
adrianozo
Spróbuj tego smile.gif

http://ownpage.pl/php/stronicowaniepaginac...-z-bazy-danych/
bastard13
  1. /*określanie, którą stronę mamy wyświetlić*/
  2. if(isset($_GET['page']))
  3. {
  4. /*
  5. została przesłana wartość określająca, która strona ma być wyświetlona.
  6. Jakaś walidacja, czy jest to rzeczywiście liczba i czy nie mniejsza niż 0
  7. */
  8. if(jest_liczba($_GET['page']))
  9. { $page=$_GET['page']; }
  10. else
  11. { $page=1; }
  12. }
  13. else
  14. { $page=1; }
  15.  
  16. /*ilość stron*/
  17. $result=mysql_query("SELECT count(*) as count FROM moja_tabela")
  18. $result = mysql_fetch_array($result);
  19. $how_many = $result[0];
  20.  
  21. /*ile chce wyświetlić na stronie*/
  22. $to_show=10;
  23.  
  24. /*numer ostatniej strony*/
  25. $last_page=ceil($how_many/$to_show);
  26.  
  27. /*sprawdzanie, czy $page>$last_page*/
  28. $page= $page>$last_page ? $last_page : $page-1;
  29.  
  30. /*pobieranie elementów*/
  31. $result=mysql_query('SELECT * FROM moja_tabela limit '.($page*10).','.$to_show);
  32.  
  33. /*wyświetlanie rezultatu
  34.   w linkach trzeba tylko dodać: ?page=strona_do_wyswietlenia
  35. */
Silny
w dwudziestej lini cały czas wywala mi błąd: Parse error: syntax error, unexpected ';' in /home/public_html/nice/articles.php on line 20
co jest??

  1. <?php
  2. include("includes/header.php");
  3. include("includes/headline.php");
  4. include("common.php");
  5.  
  6. $szablon->set_filenames(array(
  7. 'body' => 'articles_body.tpl')
  8. );
  9.  
  10. $lang = $lang['all_articles'];
  11. $liczRekordy = mysql_num_rows(mysql_query("SELECT id FROM articles"));
  12. if ($liczRekordy > 0) {
  13. echo '<center><font size="5"> '.$lang.' '.$liczRekordy.' </font></center>';
  14. } else {
  15. echo '<center><font size="5">Nie mamy artykułów w bazie.</font></center>';
  16. }
  17.  
  18. $subpage = $_GET['page'];
  19. $perPage = 5;
  20. if (!empty($_GET['subpage']) &amp;&amp; (is_numeric($_GET['subpage'])))
  21. {
  22. $subpage = (int) $_GET['subpage'];
  23. }
  24. if ($subpage < 1)
  25. {
  26. $subpage = 1;
  27. }
  28. $start = ($subpage - 1) * $perPage;
  29. $zapytanie = 'SELECT id, tytul, autor, data FROM `articles` ORDER BY `id` DESC LIMIT '.$start.', '.$perPage.'';
  30. $idzapytania = mysql_query($zapytanie);
  31. if(mysql_real_escape_string((!isset($_GET['id'])) or empty($_GET['id'])))
  32. {
  33. while ($wiersz = mysql_fetch_array($idzapytania))
  34. {
  35. ?>
  36. <div id="articles_view">
  37. <h<h3><a href="view_articles.php?id=<?php echo $row['id']; ?>" class="no"><?php echo $row['tytul']; ?></a></h3>
  38. Dodał: <a href="#"><?php echo $row['autor']; ?></a>, <?php echo $row['data']; ?>
  39. </div>
  40. <?php
  41. }
  42. $prev = $subpage - 1;
  43. $next = $subpage + 1;
  44. $prevLink = 'index.php?page='.$prev;
  45. $nextLink = 'index.php?page='.$next;
  46. $ilosc_wierszy = mysql_num_rows($idzapytania);
  47. if($subpage > 1)
  48. echo'<a style="text-decoration: none;" href="'.$prevLink.'">Poprzednia strona</a> ';
  49. $stron=round($ilosc_wierszy/$perPage);
  50. for($i=1; $i<=$stron; ++$i)
  51. {
  52. if($i==$subpage)
  53. echo $i;
  54. else
  55. echo '<a style="text-decoration: none;" href="index.php?page='.$i.'">'.$i.' </a>';
  56. }
  57. if($subpage < $stron)
  58. echo ' <a style="text-decoration: none;" href="'.$nextLink.'">Następna strona</a>';
  59. }
  60. $szablon->pparse('body');
  61. include('includes/footer.php');
  62. ?>
foxbond
Cytat
&amp;&amp;
WTF?
Chyba powinno być && lub AND
Silny
ok, trybi, problem teraz mam z tym, iż nie wyświetla ilości stron, ani linku (następna strona) jest tylko poprzednia strona w przypadku gdy w linku dam page=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.