Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]sortowanie wynikow
masterbx2
post
Post #1





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 1.04.2011

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


Witam mam problam z rozwiazaniem skryptu.

otoz mam tabele "oceny" w ktorej zapisane sa oceny plików.
wyglada tak:
id / user / plik / plus / minus

zrobilem to tak aby kazdy user mogl oddac glos na kazdy dowolny link tylko raz. chcialem teraz wyswietlic plik z najwieksza liczba plusow, czyli nalezaloby policzyc pliki z takim samym numerem ktore maja dodatkowo przypisana wartosc plus = 1

ale nie moge sobie poradzic (IMG:style_emoticons/default/sad.gif) probowalem z wyswietleniem wynikow ale nie wiem jak je sortowac..
Go to the top of the page
+Quote Post
kamil_lk
post
Post #2





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


być moze takie zapytanie:
SELECT * FROM nazwa_tabeli WHERE MAX(plus);
Go to the top of the page
+Quote Post
masterbx2
post
Post #3





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 1.04.2011

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


tylko wlasnie problem w tym ze w kolumnie plus moze byc tylko wartosc 1 albo 0 wiec to by raczejnie rozwiazalo tego problemu.

pokaze skrypt jakim probowalem to ogarnac i troche wytlumacze tok swego myslenia:

  1. $query = mysql_query("SELECT * FROM oceny WHERE plus =1 "); //pobralem wszystkie pliki w ktorych jest plus
  2. while($row=mysql_fetch_assoc($query))
  3.  
  4. {
  5. $queryPlus = mysql_query("SELECT * FROM oceny WHERE(plus = 1 && plik = '".$row['plik']."') "); //sprawdzilem ktore pliki sie powtarzaja
  6. $ilePlus = mysql_num_rows($queryPlus); //po to aby je tu zliczyc.
  7. {
  8.  
  9. echo'plusy: '.$ilePlus. ' ';
  10. echo $row['plik'];
  11. echo '<br />';
  12. }
  13. }
  14.  





wyskakuje mi potem tabela z wynikami:




plusy: 2 32
plusy: 1 34
plusy: 1 37
plusy: 2 33
plusy: 2 33
plusy: 2 32

drugi wynik to numer pliku.

przy tym podejsciu mam ten problem ze nie iwem jak wprowadzic porzadek do tych wynikow tak aby sortowane byly wg wielkosci...

Ten post edytował masterbx2 12.04.2011, 10:22:29
Go to the top of the page
+Quote Post
kamil_lk
post
Post #4





Grupa: Zarejestrowani
Postów: 325
Pomógł: 33
Dołączył: 31.05.2008

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


ORDER BY nazwa_pola po którym chcesz sortować (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
masterbx2
post
Post #5





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 1.04.2011

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


poleceniem odrer juz tez probowalem. ale jakos tez nie idzie. z reszta orderem tez sortuje mi to wg wartosci pola w tabeli... a tu chce uzyskac jakos taki efekt aby mi posortowalo te wyniki z $ilePlus... czyli posprtowalo wg ilosci wystapien danego ciagu w tabeli. (IMG:style_emoticons/default/smile.gif)

moze wg zle sie za to zabralem i moj powyzszy skrypt jest do bani... jestem otwarty na inne rozwiazania

Ten post edytował masterbx2 12.04.2011, 11:04:58
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: 22.08.2025 - 13:31