Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL]Stronicowanie
rafal155
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 15.08.2008

Ostrzeżenie: (0%)
-----


Witam mam tutaj prosty skrypt wyświetlający newsy z bazy danych, chciałbym aby na jednej stronie wyświetlało mi tylko 10 newsów, jak to zrobić? Tyle szukałem na google i forum i coś tam było ale jakoś nie wychodziło mi dostosowania tego do mojego kodu. Z góry dzięki.

Kod
<html>
<head>
<style>
.reg {
     font-family : Verdana, serif;
       font-size : 13px;
       font-weight : bold;
       background-color : #a9c8d8;
       }
.tab {
     font-family : Verdana, serif;
       font-size : 11px;
       font-weight : normal;
       background-color : #d4e6ef;
       }

</style>
</head>
<body>
<?php
mysql_connect('localhost', 'root' , 'krasnal');
mysql_select_db("logowanie");
$query = mysql_query("select * from newsy order by data desc limit 0,6");
while($rekord = mysql_fetch_array($query))
{
echo '
';
echo '<table class="tab" border="0" width="40%" align="center">';
echo '<tr>';
echo '<td colspan="2" class="reg"><center>'.$rekord[1].'</center></td>';
echo '</tr>';
echo '<tr>';
echo '<td colspan="2">'.$rekord[2].'</td>';
echo '</tr>';
echo '<tr>';
echo '<td>Dodał: '.$rekord[4].', Dnia: '.$rekord[3].'</td>';
echo '<td>Komentarzy [133]</td>';
echo '</tr>';
echo '</table>';
}
  
?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
qba10
post
Post #2





Grupa: Zarejestrowani
Postów: 264
Pomógł: 20
Dołączył: 19.08.2007
Skąd: Bryńsk k. Lidzbarka Welskiego (nie mylić z Warmińskim)

Ostrzeżenie: (0%)
-----


Szukałeś na forum?

Oto skrypt stronicowania by nospor:
http://nospor.pl/news/category/pager/


--------------------
Qbix Media Project - Prosty Multiplatformowy Odtwarzacz Muzyki
Go to the top of the page
+Quote Post
rafal155
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 15.08.2008

Ostrzeżenie: (0%)
-----


To też probowałem, ale jakoś także nie wychodziło.
Go to the top of the page
+Quote Post
ferrero2
post
Post #4





Grupa: Zarejestrowani
Postów: 171
Pomógł: 32
Dołączył: 5.08.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Zastosuj zapytanie sql które pobiera newsy z bazy danych i ogranicz przez polecenie LIMIT...
A skrypt nospora działa bez zarzutów więc niewiem o co Ci chodzi.

Pozdrawiam


--------------------
---------------------------
"Jeżeli trzeci dzień z rzędu nie chce Ci się pracować tzn że dziś jest ŚRODA !
Algorytmy , Programowanie , Tworzenie WWW - SPRAWDŹ
Go to the top of the page
+Quote Post
Maveral
post
Post #5





Grupa: Zarejestrowani
Postów: 45
Pomógł: 8
Dołączył: 30.07.2005

Ostrzeżenie: (0%)
-----


Cytat(rafal155 @ 16.08.2008, 21:53:43 ) *
Witam mam tutaj prosty skrypt wyświetlający newsy z bazy danych, chciałbym aby na jednej stronie wyświetlało mi tylko 10 newsów, jak to zrobić? Tyle szukałem na google i forum i coś tam było ale jakoś nie wychodziło mi dostosowania tego do mojego kodu. Z góry dzięki.

Witam. Wczoraj zrobiłem taki właśnie skrypcik więc mam nadzieję, że komuś się w przyszłości przyda.

  1. //...Tutaj łaczymy się z bazą...
  2. <?php
  3. // Pobranie numeru strony wpisów.
  4. $wartosc = $_GET['limit1'];
  5.  
  6. // Sprawdzamy czy GET nie jest puste, a jeżeli jest ustawiamy zmienną limit na 0.
  7. if (!isset($wartosc)) {
  8. $limit1 = 0;
  9. } else {
  10. $limit1 = $wartosc;
  11. }
  12.  
  13. //Ilość wpisow na stronie.
  14. $limit2=10;
  15.  
  16. //Wyświetlamy wpisy o liczbie limit2 zaczynając od wpisu nr. limit1.
  17. $zapytanie = "SELECT * FROM `nasza_tablica` ORDER BY id desc LIMIT ". $limit1 .",". $limit2 ."";
  18. $idzapytania = mysql_query($zapytanie);
  19. echo '<table><tr><td><b>L.p.</b></td><td><b>Imię</b></td><td><b>Nazwisko</b></td><td><b>Wiek</b></td></tr>';
  20. while ($wiersz = mysql_fetch_row($idzapytania)) {
  21. echo '<tr><td>'. $wiersz[0] .'</td><td>'. $wiersz[1] .'</td><td>'. $wiersz[2] .'</td><td>'. $wiersz[3] .'</td></tr>';
  22. }
  23. echo '</table>';
  24.  
  25. //Pobieramy całkowitą liczbę wpisów z tablicy, którą będziemy mieli dostepną pod zmienną rec['ile'].
  26. $rec=mysql_fetch_assoc(mysql_query('SELECT count(*) as ile FROM nasza_tablica'));
  27.  
  28. //Teraz paginacaja. Zmienna j będzie nam kolejno numerowała strony pod wpisami.
  29. for ($j=1; $j<$rec['ile']; $j++) {
  30.  
  31. //Jeżeli jest to pierwsza pętla (czyli j=1) wtedy ustawiamy limit1 na 0, aby zacząć zliczanie wpisów od pierwszego rekordu w bazie. Jeżeli tak nie jest porcjujemy wpisy co limit2 (w tym wypadku 10).
  32. if ($j == 1) {
  33. $limit1=0;
  34. }
  35. else {
  36. $limit1=$limit1+$limit2;
  37. }
  38.  
  39. //Zabezpieczenie - jeżeli liczba wpisów będzie wieksza niż całkowita rzeczywista liczba wpisów w bazie danych, to przerywamy pętlę. Jeżeli tak nie jest, to wyświetlamy linki do kolejnych stron.
  40. if ($limit1>$rec['ile']) {
  41. break;
  42. }
  43. else {
  44. echo '<a href="newsy.php?limit1='. $limit1 .'">'. $j .'</a>';
  45. echo ' - ';
  46. }
  47.  
  48. }
  49. ?>


Pozdrawiam smile.gif

Ten post edytował Maveral 31.08.2008, 12:31:12
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 13:40