Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL] Wyświetlanie w kilku stronach rekordów
vodkon
post 14.10.2012, 14:36:57
Post #1





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 8.02.2011

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


Witam chce zrobić wyświetlanie rekordów mysql w stronach zrobiłem że jak jest w moim przypadku /wydarzenia to wyświetla się pierwsze 5 rekordów a gdy wpisze /wydarzenia/Strona_2 to wyświetla się 5 następnych tylko jak wyświetlić ile stron będzie po 5 rekordów i wyświetlić <a href="/wydarzenia">Strona 1 </a> <a href="/wydarzenia/Strona_2"> Strona 2 </a> itd. powiedzmy mam 18 rekordów to będą 4 strony a jak będzie 21 to 5 jak zrobić żeby się to zmieniało wraz w nowymi rekordami na stronie. jak osiągnąć taki cel ?

  1. if(isset($_GET["p"]) AND $_GET["p"] == "tryb"){
  2. if(isset($_GET["strona"]) AND $_GET["strona"] == "1"){ header("Location: /Wydarzenia"); die; }
  3. if(isset($_GET["strona"]) AND $_GET["strona"] == "0"){ header("Location: /Wydarzenia"); die; }
  4. if(isset($_GET["strona"])){ $wd_strona_get=$_GET["strona"]; }else{ $wd_strona_get="1"; }
  5. $limit_wd = $wd_strona_get*5-5;
  6. $wdres_mysql = "SELECT * FROM wydarzenia ORDER BY id ASC limit $limit_wd, 5";
  7. $r2_wd = mysql_query($wdres_mysql); $r2_wd = mysql_query($wdres_mysql);
  8. ks_html1();
  9. while ($MySQL = mysql_fetch_array($r2_wd)) {
  10. echo $MySQL['nazwa'].'<br>';
  11. }
  12.  
  13. ###Tutaj kod generujący np. <a href="/wydarzenia"> Strona 1 </a> <a href="/wydarzenia/Strona_2"> Strona 2 </a> <a href="/wydarzenia/Strona_3"> Strona 3 </a>
  14.  
  15. ks_html2();
  16.  
  17. }
Go to the top of the page
+Quote Post
Greg0
post 14.10.2012, 14:49:43
Post #2





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

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


Żeby wiedzieć ile stron będzie, dzielisz całkowitą ilość rzeczy przez limit na jedną stronę i zaokrąglasz w górę.
A potem wystarczy że zrobisz pętlę.
Go to the top of the page
+Quote Post
vodkon
post 14.10.2012, 18:14:17
Post #3





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 8.02.2011

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


Zrobione mam $limit_str = ceil($limit_wdst/5); jak teraz zrobić pętle żeby pierwszy link miał wartość <a href="/wydarzenia"> Strona 1 </a> a kolejne już <a href="/wydarzenia/Strona_2"> Strona 2 </a> <a href="/wydarzenia/Strona_3"> Strona 3 </a> chodzi o dodanie do każdego kolejnego Strona_ + liczbę
Go to the top of the page
+Quote Post
Greg0
post 14.10.2012, 19:06:09
Post #4





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

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


Pętla for. Jeśli nie może być /wydarzenia/Strona_1 to warunek musisz do pętli wsadzić.
Go to the top of the page
+Quote Post
vodkon
post 14.10.2012, 19:15:11
Post #5





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 8.02.2011

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


właśnie jaki to ma być warunek bo nie potrafię tego zrobić
Go to the top of the page
+Quote Post
Greg0
post 14.10.2012, 19:22:43
Post #6





Grupa: Zarejestrowani
Postów: 264
Pomógł: 54
Dołączył: 31.08.2007
Skąd: Tychy

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


Pętla for odlicza liczby, warunek jeśli pierwsze wywołanie pętli to wstawiasz link bez strony, w przeciwnym wypadku ze stroną.
Go to the top of the page
+Quote Post
vodkon
post 14.10.2012, 19:38:53
Post #7





Grupa: Zarejestrowani
Postów: 72
Pomógł: 0
Dołączył: 8.02.2011

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


Wykonałem coś takiego może się komuś też przyda
Dzięki Greg0 za pomoc
  1. if(isset($_GET["p"]) AND $_GET["p"] == "tryb"){ $r_wd = mysql_query("SELECT * FROM wydarzenia"); $limit_wdst = mysql_num_rows($r_wd);
  2. if(isset($_GET["strona"]) AND $_GET["strona"] == "1"){ header("Location: /Wydarzenia"); die; }
  3. if(isset($_GET["strona"]) AND $_GET["strona"] == "0"){ header("Location: /Wydarzenia"); die; }
  4. if(isset($_GET["strona"])){ $wd_strona_get=$_GET["strona"]; }else{ $wd_strona_get="1"; }
  5. $limit_wd = $wd_strona_get*6-6; $limit_str = ceil($limit_wdst/6);
  6. $wdres_mysql = "SELECT * FROM wydarzenia ORDER BY id ASC limit $limit_wd, 6";
  7. $r2_wd = mysql_query($wdres_mysql);
  8. ks_html1();
  9. while ($MySQL = mysql_fetch_array($r2_wd)) {
  10. echo $MySQL['nazwa'].'<br>';
  11. } if($limit_str <= 1){ }else{
  12. echo 'Strona <a href="/Wydarzenia"> 1 </a> ';
  13. for ($x = 2; $x <= $limit_str; $x++)
  14. echo ' | <a href="/Wydarzenia/Strona_'.$x.'"> '.$x.' </a> '; }
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 Wersja Lo-Fi Aktualny czas: 27.06.2025 - 00:54