Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Nie dziła dzielenie wpisów na stronie
david8213
post
Post #1





Grupa: Zarejestrowani
Postów: 308
Pomógł: 0
Dołączył: 9.12.2009

Ostrzeżenie: (10%)
X----


  1. <?
  2.  
  3. $nazwa = "data.txt";
  4. $myFile = fopen($nazwa, "r");
  5. $i=0;
  6. while(!feof($myFile)) {
  7. $myLine = fgets($myFile);
  8. $i++; }
  9. fclose($myFile);
  10. print(" <font color=black>Liczba wpisów: <b>$i</b><BR><BR>");
  11. $nazwa = "data.txt";
  12. $myFile = fopen($nazwa, "r");
  13. $k=1;
  14. $end=$st+19;
  15. while(!feof($myFile))
  16. {
  17. $myLine = fgets($myFile);
  18. if ($k>=$st)
  19. {
  20. if ($k<=$end) {
  21. print("$myLine");
  22. };
  23. };
  24. $k++;
  25. }
  26. fclose($myFile);
  27. print("<br><center><font color=black>kolejne strony ... ");
  28. $ile=floor($i/19);
  29. $ctpage=floor($st/19)+1;
  30. for ($z=0;$z<=$ile;$z++)
  31. {
  32. $y=$z+1;
  33. if ($y==$ctpage) {print ("<FONT color=#000000> $y ");}
  34. else {print ("<A HREF=\"czytaj.php?st=".($z*2)."0\"> $y </A>");}
  35. };
  36. ?>


Co jest nie tak że nie działa dzielenie wpisów po 20
Dane wczytywane są z pliku tekstowego

Ten post edytował david8213 11.03.2016, 17:18:21
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kshyhoo
post
Post #2





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Prześledź ten kod:
  1. <?php
  2. function pasek($rekordow, $na_stronie, $na_pasku, $skrypt, $s) {
  3. $stron = ceil($rekordow / $na_stronie);
  4. if ($s < 1)
  5. $s = 1;
  6. if ($s > $stron)
  7. $s = $stron;
  8. $koniec = $s + $na_pasku;
  9. if ($s <= $na_pasku)
  10. $koniec = $na_pasku * 2 + 1;
  11. if ($koniec > $stron)
  12. $koniec = $stron;
  13. $start = $koniec - $na_pasku * 2;
  14. if ($start < 1)
  15. $start = 1;
  16. if ($s > 1)
  17. $p = "<a href='$skrypt".($s - 1)."'>&lt;&lt;&lt;</a>";
  18. else
  19. $p = "<span style='color:gray'>&lt;&lt;&lt;</span>";
  20. if ($s < $stron)
  21. $n = "<a href='$skrypt".($s + 1)."'>&gt;&gt;&gt;</a>";
  22. else
  23. $n = "<span style='color:gray'>&gt;&gt;&gt;</span>";
  24. for ($i=$start; $i<=$koniec; $i++) {
  25. if ($i == $s)
  26. $l .= "&nbsp;<span style='color:#c00;'><b>$i</b></span>&nbsp;";
  27. else
  28. $l .= "&nbsp;<a href='$skrypt$i'>$i</a>&nbsp;";
  29. }
  30. if ($rekordow < 1)
  31. $wynik = "brak informacji spełniających kryteria wyszukiwania";
  32. else
  33. $wynik = "znalezionych: $rekordow, strona $s z $stron<br />";
  34. if ($stron > 1)
  35. $wynik .= "$p&nbsp; - $l - &nbsp;$n";
  36. return $wynik;
  37. }
  38.  
  39. $s = ($_GET["s"] > 1) ? number_format($_GET["s"], 0, "", "") : 1; // numer strony
  40. $na_stronie = 10; // liczba rekordow widocznych na stronie
  41. $na_pasku = 5; // liczba odpowiedzi/2 na pasku
  42. $skrypt = "index.php?s="; // skrypt do wysyłania danych
  43.  
  44. $dane = file('tekst.txt');
  45.  
  46. $rekordow = count($dane);
  47. $stron = ceil($rekordow / $na_stronie);
  48. if ($s > $stron and $rekordow > 0)
  49. $start = ($stron - 1) * $na_stronie;
  50. else
  51. $start = ($s - 1) * $na_stronie;
  52. if ($start + $na_stronie > $rekordow)
  53. $koniec = $start + $rekordow % $na_stronie;
  54. else
  55. $koniec = $start + $na_stronie;
  56.  
  57. echo '<p style="text-align:center;">';
  58. echo pasek($rekordow, $na_stronie, $na_pasku, $skrypt, $s);
  59. echo '</p>';
  60.  
  61. for($i=$start; $i<$koniec; $i++)
  62. echo "<p>$dane[$i]</p>";
  63.  
  64. echo '<p style="text-align:center;">';
  65. echo pasek($rekordow, $na_stronie, $na_pasku, $skrypt, $s);
  66. echo '</p>';
  67. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 2.10.2025 - 23:14