[PHP]Pętla foreach i for, Wyświetlanie liczb malejąco |
[PHP]Pętla foreach i for, Wyświetlanie liczb malejąco |
10.10.2019, 09:33:13
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 5.05.2011 Ostrzeżenie: (0%) |
Witam serdecznie.
Mam mały problem z kodem. Obecnie wygląda to tak, że dodaje np 10 osób w liście (z bazy) i obok każdej osoby jest licznik kliknięć. Chciałbym to spreparować tak, aby u góry zaczynała się największa liczba a na dole najmniejsza. mam na myśli: Skrócony kod:
Próbowałem to dodać tak, ale cała pętla wykonuje się w jednej lini:
A chciałbym aby wyglądało to tak: Tylko nie wiem w którym miejscu dodać pętle aby jej wartość załadowywała się do każdej osoby osobno. Bo teraz jak sadze to jest tak, że dochodzi do każdej osoby, wykonuję petle od 6 do 2 i leci z następną osobą i znów to samo. Pozdrawiam Ten post edytował Owneds 10.10.2019, 09:43:16 |
|
|
10.10.2019, 10:11:59
Post
#2
|
|
Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) |
Na wstępie zaznaczę, że nigdy nie kodowałem nic w wordpressie, więc mogę nie mieć racji
Generalnie zazwyczaj robi się tak, że pobiera się od razu wszystkie dane, które są potrzebne i w zapytaniu od razu się odpowiednio je sortuje. Ty pobierasz tylko ID i post_author, sortujesz to po ID i później dociągasz wszystkie inne dane - to negatywnie wpływa na wydajność skryptu. Wg. mnie powinieneś pobrać w jednym zapytaniu wszystkie dane, których potrzebujesz, posortować je w tym samym zapytaniu po ilości odsłon, a później w pętli tylko wyświetlić. |
|
|
10.10.2019, 10:57:08
Post
#3
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 5.05.2011 Ostrzeżenie: (0%) |
Serdecznie dziękuje za odpowiedź.
W wordpressie również dopiero zaczynam i jest to dość zaawansowana wtyczka którą staram się przerobić w miarę możliwości pod siebie i do efektu finalnego brakuje mi tylko tej pętli. Generalnie nie chodzi nawet o to żeby to sortowało w bazie po ilości kliknięć, tylko aby było to nawet spreparowane, że nie zależnie jaka jest osoba u góry, po prostu od góry ma pokazywać największa liczbę kliknięć a na dole najmniejszą, zgodnie z liczbami które znajdują się w pętli . To już by mnie zadowoliło Tylko, że nie wiem gdzie dodać tę pętlę aby było tak jak na screenie drugim a nie tak jak teraz, że pętla wykonuje się do każdego zapytania osobno. Pozdrawiam |
|
|
11.10.2019, 06:55:48
Post
#4
|
|
Grupa: Zarejestrowani Postów: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa Ostrzeżenie: (0%) |
No ale to juz przy wyciąganiu z bazy powinieneś to posortować. Wyobraź sobie, że masz tam kilka stron tych osób, wchodzisz na pierwszą, największa ilość kliknięć na tej stronie to 5, więc osoba z tą ilością jest na 1 miejscu, wchodzisz na stronę drugą a tam 10000. To troche nie logiczne, nie uważasz? Zamiast
zrób po prostu order by ILOSC_KLIKNIEC DESC. Zamiast ILOSC_KLIKNIEC musisz wstawic pole, w którym jest to przechowywane. |
|
|
Wersja Lo-Fi | Aktualny czas: 19.04.2024 - 20:20 |