Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem - porcjowanie stron . wyświetlanie kategorii
Forum PHP.pl > Forum > PHP
Mariusz421
Witam.
Moja strona to www.czarnysport.pl

Mam problem. Mianowicie nie chcą porcjować mi się wyniki z bazy danych - newsy w prawdzie dzielą się na strony, ale kliknijscie w np. 2 strone i zobaczycie ze wyswietla sie ciągle to samo:/ . Druga rzecz to to, że chce, żeby newsy dzieliły się na kategorie. Ale jak wpisuje index.php?cid=1 - tak być powinno - to wyświetla się CIĄGLE to samo!

Oto kod pliku index:
  1. <?php
  2. include 'config.php';
  3. include 'dodatki.php';
  4. $id = intval($_GET['id']);
  5. $cid = intval($_GET['cid']);
  6. $infid = intval($_GET['infid']);
  7. ?><head itp.>
  8. <?php
  9. if ($infid>'0')
  10. {
  11. $q = mysql_query("SELECT * FROM infopages WHERE id='$infid' LIMIT 1;");
  12. $rekord = mysql_fetch_array($q);
  13. echo '<tr><TD CLASS="menu_2">';
  14. echo make_clickable(nl2br(stripslashes($rekord[2])));
  15. echo '</TD></TR>';
  16. }
  17. if ($id>'0' AND !$infid)
  18. {
  19. $q = mysql_query("SELECT * FROM news WHERE id='$id' LIMIT 1;");
  20. $ile = mysql_num_rows($q);
  21. if ($ile!='1')
  22. {
  23. die('404 News Not Found');
  24. }
  25. $news='0';
  26. $rekord = mysql_fetch_array($q);
  27. extract($rekord);
  28.    wyswietlanie newsa - kod oczywiście jest . wszystko prawidłowo
  29. {
  30. extract($rekord);
  31. echo '
  32. wyświetlanie newsa'
  33. }else
  34. { //od id>0
  35. if (!$infid)
  36. {
  37. ?><!-- koniec -->
  38.  
  39. Najważniejsze informacje
  40.  
  41. <?
  42. $query2 = mysql_query("SELECT * FROM news ORDER BY id DESC");
  43. while( $wiersz = mysql_fetch_array( $query2 ) ) {
  44.  
  45.  
  46. extract($wiersz);
  47. if($topnews == "1")
  48. {
  49. echo '
  50.    <tr>
  51.      <td class="head22"><a HREF="./news.php?id='.$id.'" class="a_moree"><B><font class="k11">'.stripslashes($tytul).'</B></A></font></td></tr>
  52. <tr>
  53.      <td class="menu_2">';
  54. if ($i1)
  55. {
  56. echo '<img src="'.$i1.'" class="ikonka" align="left">';
  57. }echo '
  58. '.make_clickable(stripslashes(nl2br($streszczenie))).' <A HREF="./news.php?id='.$id.'" CLASS="a_more">[czytaj więcej]</A></td></tr>
  59. <tr><td><img src="gfxnews/k2.gif"></td></tr>';
  60.  
  61. }
  62. }
  63. ?>
  64. <tr><td class="belkawiad2"><font class="allwiad">Wszystkie wiadomości</font></td></tr>
  65. <?
  66. //ile na strone
  67. $ile = 12;
  68. $numrows = mysql_num_rows(mysql_query("SELECT * FROM news"));
  69. if(!$p) $p = 0;
  70. // zabezpieczenie przed nienumerycznymi wartosciami
  71. $p = 0;
  72. $ile = 12;
  73. $query = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT $p,$ile");
  74. while( $wiersz = mysql_fetch_array( $query ) ) {
  75. extract($wiersz);
  76.  
  77. if($topnews == "0")
  78. {
  79. echo '
  80.      <td class="head2"><a HREF="./news.php?id='.$id.'"><font class="k111"><B>'.stripslashes($tytul).'</B></A></font></td></tr>';
  81. if ($i1)
  82. {
  83. echo '<img src="'.$i1.'" class="ikonka" align="left">';
  84. }
  85. echo '
  86. '.make_clickable(stripslashes(nl2br($streszczenie))).'
  87. <A HREF="./news.php?id='.$id.'" CLASS="a_more">[czytaj więcej]</A>';
  88. }}}}
  89. ?>
  90. -table (sam html) -<?
  91. echo "<center><br><b>strona:</b>";
  92. for($i=0;$i<ceil($numrows/$ile);$i++) {
  93. echo '<a href="index.php?p='.($i*$ile).'">'.($i+1).'</a> ';
  94. }
  95. echo "</center><br>";
  96. ?></td></tr>
  97. -table (sam html) -
  98. <?php
  99. $q = mysql_query("SELECT tytul,tresc FROM bloki WHERE x='0' ORDER BY y;");
  100. while ($rekord = mysql_fetch_array($q))
  101. {
  102.  
  103. echo '<!-- start -->
  104. <tr><td class="head1"><span class="k2">'.$rekord[0].'</span></td></tr>
  105. <tr><td class="menu_3">
  106. '.$rekord[1].'
  107. <tr><td><img src="gfx/m1k.gif"></td></tr></td></tr>
  108. <!-- stop -->';
  109. }
  110. ?>
  111. -table (sam html) -
  112. <?php
  113. $q = mysql_query("SELECT tytul,tresc FROM bloki WHERE x='1' ORDER BY y;");
  114. while ($rekord = mysql_fetch_array($q))
  115. {
  116.  
  117. echo '
  118. <tr><td class="head3"><span class="k3">'.$rekord[0].'</span></td></tr>
  119. <tr><td class="menu_4">
  120. '.$rekord[1].'
  121. <tr><td><img src="gfx/m2k.gif"></td></tr></td></tr>;
  122. }
  123. ?>
  124. --stopka--



--
do php jest osobny bbcode; używaj go, łatwiej czytać kod
~erix


To nie wie nikt?? Bo sprawa dość pilna sad.gif
EarthCitizen
Oczopląsu dostałem od przeglądania Twojego kodu, więc może postaram Ci się pomóc na przykładzie:

  1. <?php
  2. $ile_na_stronie    = 12;
  3. $aktualna_strona = (int)$_GET['aktualna_strona'];
  4.  
  5. if ($aktualna_strona < 0) {
  6.    $aktualna_strona = 0;
  7. }
  8.  
  9. $od_rekordu = $aktualna_strona * $ile_na_stronie;
  10.  
  11. // Zapytanie, którym pobierasz listę kategorii
  12. $sql = 'SELECT SQL_CALC_FOUND_ROWS *
  13.          FROM news
  14.          ORDER id DESC
  15.          LIMIT ' . $od_rekordu . ',' . $ile_na_stronie; // w przypadku pierwszej strony masz LIMIT 0,12 i analogicznie 12,12; 24,12; ... ;n*12,12
  16.  
  17. $wynik        = mysql_query($sql);
  18. // poniżej pobierasz ilość wszystkich, dzięki temu, że w powyższym zapytaniu jest SQL_CALC_FOUND_ROWS
  19. $wszystkich = mysql_result(mysql_query("SELECT FOUND_ROWS();"), 0);
  20.  
  21. /* Porcjowanie */
  22.  
  23. if ($wszystkich > $ile_na_stronie) {
  24.    $ilosc_stron = ceil($wszystkich/$ile_na_stronie);
  25.    
  26.    for ($i = 0; $i < $ilosc_stron; $i++) {
  27.        echo '<a href="[tutaj to już sobie wpiszesz co ma być]?aktualna_strona=' . $i . '">' . ($i + 1) . '</a>';
  28.    }
  29. }
  30. ?>


A co do kategorii, to gdzie Ty w swoim kodzie używasz zmiennej $cid ? bo ja nie mogę się doszukać ...
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.