Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [SQL][PHP]Wyświetlanie x rekordów i x następnych
goku900
post 9.02.2017, 16:30:11
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 9.02.2017

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


Siema, czy wie ktoś jak wyświetlić pierwsze (DESC LIMIT 10) 10 rekordów i potem kolejne 10?
Go to the top of the page
+Quote Post
motyl-pl
post 9.02.2017, 16:33:06
Post #2





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

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


DESC LIMIT 10, 10


--------------------
Go to the top of the page
+Quote Post
goku900
post 9.02.2017, 16:53:44
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 9.02.2017

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


Niezbyt działa bo chcę zrobić coś tego typu:
  1. <?php
  2. if($_GET['page'] == "1"){
  3. //wyświetlanie 10 wyników
  4. }
  5. ?>

I tak dalej, że jeśli $_GET['page'] == "2" to kolejne 10.
Go to the top of the page
+Quote Post
trueblue
post 9.02.2017, 16:57:25
Post #4





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

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


I jak będziesz miał 100 stron, to zrobisz 100 warunków?
Poszukaj informacji na temat stronicowania PHP+MySQL.


--------------------
Go to the top of the page
+Quote Post
motyl-pl
post 9.02.2017, 17:00:04
Post #5





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

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


  1. <?php
  2. $page = (int) $_GET['page'];
  3. $pageOffset = $page * 10;
  4.  
  5. $query = mysql_query("SELECT * FROM .. LIMIT 10, $pageOffset"); // nie użwaj starego mysql!
  6. ?>


--------------------
Go to the top of the page
+Quote Post
goku900
post 9.02.2017, 17:06:13
Post #6





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 9.02.2017

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


Cytat(motyl-pl @ 9.02.2017, 17:00:04 ) *
  1. <?php
  2. $page = (int) $_GET['page'];
  3. $pageOffset = $page * 10;
  4.  
  5. $query = mysql_query("SELECT * FROM .. LIMIT 10, $pageOffset"); // nie użwaj starego mysql!
  6. ?>

Dzięki o co chodzi ze starym mysql?
Go to the top of the page
+Quote Post
motyl-pl
post 9.02.2017, 17:07:53
Post #7





Grupa: Zarejestrowani
Postów: 294
Pomógł: 31
Dołączył: 2.04.2010

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


wycofany jest używaj mysqli


--------------------
Go to the top of the page
+Quote Post
viking
post 9.02.2017, 17:10:50
Post #8





Grupa: Zarejestrowani
Postów: 6 378
Pomógł: 1116
Dołączył: 30.08.2006

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


Jak zajrzysz kiedyś do dokumentacji jakiejkolwiek funkcji mysql np http://php.net/manual/en/function.mysql-query.php to masz wielki warning na czerwono już od kilku lat chyba. Masz tam wszystko opisane. Ale patrząc na pytanie podstawowe, raczej nie lubisz czytać dokumentacji wink.gif

Ten post edytował viking 9.02.2017, 17:11:26


--------------------
Go to the top of the page
+Quote Post
goku900
post 9.02.2017, 17:22:12
Post #9





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 9.02.2017

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


Oke, ale jak teraz użyłem twojego kodu jest problem. Mój kod:
  1. if(isSet($_GET['page']) && $_GET['page'] !== ""){
  2. $page = filtruj($_GET['page']);
  3. $pageOffset = $page * 5;
  4. $zapytanie = mysql_query("SELECT * FROM memes WHERE place='index' ORDER BY id DESC LIMIT 5, ".$pageOffset.""); // nie użwaj starego mysql!
  5. }else{
  6. $zapytanie = mysql_query("SELECT * FROM memes WHERE place='index' ORDER BY id DESC LIMIT 5");
  7. }

I jeśli link wygląda tak:
  1. index.php?page=2

Wyświetla się tylko jeden rekord. Co robić?

Dodam, że do wyświetlania używam pętli while, php nie wywala błędów na stronie:
  1. if(isSet($_GET['page']) && $_GET['page'] !== ""){
  2. $page = filtruj($_GET['page']);
  3. $pageOffset = $page * 5;
  4. $zapytanie = mysql_query("SELECT * FROM memes WHERE place='index' ORDER BY id DESC LIMIT 5, ".$pageOffset.""); // nie użwaj starego mysql!
  5. }else{
  6. $zapytanie = mysql_query("SELECT * FROM memes WHERE place='index' ORDER BY id DESC LIMIT 5");
  7. }
  8. if($data['access'] == 0){
  9. if(mysql_num_rows($zapytanie) > 0) {
  10. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  11. while($r = mysql_fetch_assoc($zapytanie)){
  12. $zap = mysql_query("SELECT * FROM users WHERE login='".$r['nick']."'");
  13. $wyn = mysql_fetch_assoc($zap);
  14. echo '<div id="mem">
  15. '.$r['title'].' <small>'.$r['add_date'].' &nbsp; Dodał/a: <a href="profile.php?id='.$wyn['id'].'">'.$r['nick'].'</a></small>
  16. <a href="meme.php?id='.$r['id'].'"><img src="images_memes/'.$r['meme_name'].'" alt="'.$r['title'].'" width="600" height="700"/></a>
  17. <a href="" onclick="add(\'plus\', \''.$r['id'].'\'); return false"><font color="green">Dobre ('.$r['plus'].')</font></a> <a href="" onclick="add(\'minus\', \''.$r['id'].'\'); return false"><font color="red">Słabe ('.$r['minus'].')</font></a>
  18. </div>';
  19. }
  20. }else{
  21. echo 'Brak memów do wyświetlenia!<br>';
  22. }
  23. }
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: 18.07.2025 - 03:46