Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] sorotwanie
dopelganger
post
Post #1





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 27.10.2012

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


Witam
jak posortować wyniki zwrócone z bazy w formie tablicy?

  1. $sql = $db->query("SELECT * FROM tabela ORDER BY date LIMIT 5");
  2. $num = $sql->num_rows;
  3.  
  4.  
  5. for ($i=1;$i<=$num;$i++)
  6. {
  7. $row = $sql->fetch_assoc();
  8.  
  9. $rows[] = array(
  10. 'licznik'=>$i,
  11. 'label'=>$row["label"],
  12. 'data'=>strftime("%d %m",$row["date"])
  13. );
  14. }
  15.  
  16. return $rows;


próbowałem, ale nie działa:

  1. sort($rows)


Ten post edytował dopelganger 16.11.2013, 16:16:33
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
nospor
post
Post #2





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




Nie sadzisz ze lepiej by bylo juz je posortowac na etapie pobierania z bazy? Do tego sluzy ORDER BY
Go to the top of the page
+Quote Post
dopelganger
post
Post #3





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 27.10.2012

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


Cytat(nospor @ 16.11.2013, 16:14:35 ) *
Nie sadzisz ze lepiej by bylo juz je posortowac na etapie pobierania z bazy? Do tego sluzy ORDER BY


właśnie nie, tylko nie wkleiłem całego zapytania SQL, (poprawiłem)
chodzi o to że pobieram 5 najnowszych newsów i te 5 musi być posortowane.

chyba że można w jakiś sposób posrtować już w zapytaniu SQL ostatnie 5 rekordów?(IMG:style_emoticons/default/questionmark.gif)

Ten post edytował dopelganger 16.11.2013, 16:18:45
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




No to zwykle pod zapytanie.
Zapytanie co masz teraz bedzie podzapytaniem dla glownego zapytania, ktore bedzie sortowac po czym ci sie tylko podoba
Go to the top of the page
+Quote Post
dopelganger
post
Post #5





Grupa: Zarejestrowani
Postów: 236
Pomógł: 0
Dołączył: 27.10.2012

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


Cytat(nospor @ 16.11.2013, 16:20:45 ) *
No to zwykle pod zapytanie.
Zapytanie co masz teraz bedzie podzapytaniem dla glownego zapytania, ktore bedzie sortowac po czym ci sie tylko podoba


nie bardzo wiem jak to zapisać

Ten post edytował dopelganger 16.11.2013, 16:48:27
Go to the top of the page
+Quote Post
glh
post
Post #6





Grupa: Zarejestrowani
Postów: 97
Pomógł: 20
Dołączył: 18.12.2007
Skąd: Poznań

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


Jeżeli dobrze zrozumiałem to chcesz wyświetlić 5 ostatnich postów w kolejności od najmłodszego do najstarszego.
A próbowałeś ORDER BY date DESC ?
Go to the top of the page
+Quote Post
nospor
post
Post #7





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




select * from (SELECT * FROM tabela ORDER BY date LIMIT 5) podsel order by podsel.POLE_PO_KTORYM_CHCESZ_SORTOWAC
Go to the top of the page
+Quote Post
tomxx
post
Post #8





Grupa: Zarejestrowani
Postów: 172
Pomógł: 27
Dołączył: 5.10.2013

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


Na przyszłość polecam korzystać z phpMyAdmina. Wystarczyło wejść z jego poziomu do tej tabeli, posortować newsy, wpisać w "Liczba wierszy" 5 i już masz gotowy kod zapytania, który wklejasz do swojej aplikacji.

Ten post edytował tomxx 17.11.2013, 16:17:21
Go to the top of the page
+Quote Post

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: 15.09.2025 - 23:30