Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Wyświetlanie pięciu ostatnich dat
misterious
post 16.11.2012, 12:43:59
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 2
Dołączył: 7.10.2012

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


Witam!
Tworzę właśnie skrypt portalu z możliwością dodawania newsów.
Każdy news będzie tworzył temat na forum (forum połączone ze stroną), ale nie będę się rozpisywał o planowanych funkcjach smile.gif
Chodzi o to, iż nie wiem jak pokazać z bazy danych pięć ostatnio aktywnych użytkowników phpbb3
  1. <?php
  2. $aktywnosc = date("d.m.Y, H:i", $wiersz[15]);
  3. $zapytanie = "SELECT * FROM phpbb_users ORDER BY '$aktywnosc' DESC LIMIT 5";
  4. $idzapytania = mysql_query($zapytanie);
  5. echo '<table>';
  6. echo 'Ostatnio aktywni:';
  7. while ($wiersz = mysql_fetch_row($idzapytania))
  8. {
  9. $czas = date("d.m.Y, H:i", $wiersz[15]);
  10. $user = $wiersz[2];
  11. if($user == 6)
  12. {
  13. echo '<tr><td><font color="'. $wiersz[34] .'">'. $wiersz[7] .'</font></a></td>';
  14. }
  15. elseif($user == 1)
  16. {
  17. echo '<tr><td><font color="'. $wiersz[34] .'">Gość</font></a></td>';
  18. }
  19. else
  20. {
  21. echo '<tr><td><a href="memberlist.php?mode=viewprofile&u='. $wiersz[0] .'"><font color="'. $wiersz[34] .'">'. $wiersz[7] .'</font></a></td>';
  22. }
  23. echo '<td>'.$czas.'</td></tr>';
  24. }
  25. echo '<table>';
  26. ?>

  1. f($user == 6)
- czy użytkownik nie jest botem
  1. f($user == 1)
- czy użytkownik nie jest gościem
Dodam jeszcze, iż wyświtla się nazwa usera i data, ale nie sortuje się od najonwszych...
Go to the top of the page
+Quote Post
nospor
post 16.11.2012, 12:49:29
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




ORDER BY '$aktywnosc'
Przecież ty tutaj sortujesz po tekście, wiec tak naprawdę nie sortujesz.
Sortowanie polega na sortowaniu po polu a nie po tekscie


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
b4rt3kk
post 16.11.2012, 12:51:33
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


  1. $aktywnosc = date("d.m.Y, H:i", $wiersz[15]);
  2. $zapytanie = "SELECT * FROM phpbb_users ORDER BY '$aktywnosc' DESC LIMIT 5";


Co to jest?

  1. SELECT * FROM tabela ORDER BY komorka_tabeli


Nie możesz segregować wyników w ten sposób, musi to być nazwa komórki tabeli, jak data, czy coś w tym stylu. Zmienisz to zapytanie na prawidłowe i powinno być ok. Wybierz komórkę, która przechowuję datę ostatniej aktywności użytkownika czy coś w tym stylu, czy też ostatniego posta.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
misterious
post 16.11.2012, 12:54:33
Post #4





Grupa: Zarejestrowani
Postów: 52
Pomógł: 2
Dołączył: 7.10.2012

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


Dlatego tak kombinowałem z date, bo te komórki przechowują datę w formacie "1350504230" jak zapewne się domyślasz.

//EDIT
Już działa
Niepotrzebnie kombinowałem smile.gif

Ten post edytował misterious 16.11.2012, 12:55:53
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: 5.07.2025 - 04:02