![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 18.10.2006 Ostrzeżenie: (10%) ![]() ![]() |
Witam,
robie malutki serwis z fotkami i na stronie glownej bedzie wyswietlało mi 7 najnowszych i najlepszych userow wraz z ich miniaturka fotki.. no i teraz.. najnowszych zrobilem ale z najlepszymi nie moge sobie dac rady.. nick wyswietla ale miniaturki nie moge wyseitlic, a raczej przyporzadkowac userowi.. oto jak wygladaja kody: Kod $zapytanie = "SELECT id,login FROM users"; $wynik = mysql_query($zapytanie); $i = 1; while ($uzytkownicy = mysql_fetch_array($wynik)) { $zapytanie = "SELECT ocena FROM oceny WHERE para=$uzytkownicy[id]"; $wynik2 = mysql_query($zapytanie); $ile_ocen = mysql_num_rows($wynik2); while ($oceny = mysql_fetch_array($wynik2)) { $suma_ocen += $oceny[ocena]; } $najlepsi[1][$i] = $uzytkownicy[id]; $najlepsi[2][$i] = $uzytkownicy[login]; $najlepsi[3][$i] = $ile_ocen; if (empty($ile_ocen)) $najlepsi[4][$i] = 0; else $najlepsi[4][$i] = round($suma_ocen / $ile_ocen / 10 * 100); unset($suma_ocen); $i++; } @array_multisort($najlepsi[4], SORT_NUMERIC, SORT_DESC, $najlepsi[3], SORT_NUMERIC, SORT_DESC, $najlepsi[1], $najlepsi[2]); $ile_users = count($najlepsi[1]); if ($ile_users < 10) $do = $ile_users; else $do = 10; for ($i = 0; $i < $do; $i++) { echo '<td><img src="[b]co tu wpisac?![/b]"><a href="osoba-'.$najlepsi[1][$i].'.html">'.$najlepsi[2][$i].'</a></td>'; } dodam ze tak wygladaja tabele: USERS: id - ID userow login - login userow FOTKI: id - id fotki para - czyli id usera do ktorego nalezy fotka.. czyli wyglada to np tak w tabeli fotki: id | para 10|1 11|1 13|2 8|2 2|1 dodam jeszcze ze przy najnowszych sobie poradzilem.. oto kod: Kod $ile = 20; if(!$p) $p = 0; $p = (int)$p; $ile = (int)$ile; $wynik0 = mysql_query("SELECT * FROM users"); $ile_par = mysql_num_rows($wynik0); $wynik = mysql_query("SELECT * FROM users ORDER BY id DESC LIMIT 7"); while($szukane = mysql_fetch_array($wynik)) { $wynik2 = mysql_query("SELECT * FROM fotki WHERE para=".$szukane['id']." ORDER BY id DESC"); $szukane2 = mysql_fetch_array($wynik2); $ile2 = mysql_num_rows($wynik2); $data = date("Y-m-d, H:i:s", $szukane2[data]); if($ile2 != 0) echo'<td><center><a href="osoba-'.$szukane[id].'.html"><img src="zdj/mini-'.$szukane2['id'].'.jpg" style="border: double; height: 100px; width: 100px"></a></center> <br><center><a href="osoba-'.$szukane[id].'.html"><b>'.$szukane['login'].'</b></a></center></td>'; else echo'<td><center><a href="osoba-'.$szukane[id].'.html"><img src="zdj/mini-'.$szukane2['id'].'.jpg" style="border: double; height: 100px; width: 100px"></a></center> <br><center><a href="osoba-'.$szukane[id].'.html"><b>'.$szukane['login'].'</b></a></center></td>'; } prosze o pomoc! moge dac nawet dane do serwera a nawet zaplacic jesli bedzie to konieczne ![]() |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 085 Pomógł: 231 Dołączył: 12.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
Możesz spróbować zabrać się za to w ten sposób - co prawda przychodzi Ci o wiele więcej zapytań i lepiej byłoby to zrobić w pętli wyświetlającej już tylko tych siedmiu najlepszych userów, jak ich określiłeś. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 18.10.2006 Ostrzeżenie: (10%) ![]() ![]() |
Shilli spoko tylko.. jestem troche zielony w mysql i co wpisac w miejsce:
... (dalszy niezbędny kod) i zdjęcie_pobrane_z tablicy_fotki; ? prosze o odpowiedź;) moge zaplacic jbc;) zalezy mi na tym:) Ten post edytował djiras1 26.05.2008, 12:24:32 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 202 Pomógł: 117 Dołączył: 13.04.2007 Skąd: 127.0.0.1 Ostrzeżenie: (0%) ![]() ![]() |
Witam! Jeżeli zdjęcie może mieć tylko jednego właściciela to po co robisz osobną tabelę z relacjami (para)? W tabeli ze zdjęciami dodaj kolumnę user_id jako i tyle. To tak na marginesie
![]() Pozdrawiam! -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 085 Pomógł: 231 Dołączył: 12.05.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tutaj już jak dobrze zrozumiałam wyciągasz fotki. Musisz zrobić coś bardzo podobnego, dlatego nie pisałam kodu - masz pewną pulę wyników, jednak jeśli każdemu userowi przyporządkowana jest tylko jedna fotka możesz zrobić to nie za pomocą mysql_fetch_array() a za pomocą mysql_fetch_row(); czyli na przykład (pisane z palca i po ciężko-imprezowym długim weekendzie - uprzedzam):
Jak już mówiłam - lepiej zrobić to w pętli, gdzie wyświetlasz wyniki - pobierzesz tylko określoną liczbę zdjęć nie wszystkie, jak w podanym przeze mnie przykładzie. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 33 Pomógł: 0 Dołączył: 18.10.2006 Ostrzeżenie: (10%) ![]() ![]() |
no niestety ale dalej w mysql jestem zielony
![]() ![]() dziala, temat mozna zamknac, dziekuje wszystkim za pomoc ![]() Ten post edytował djiras1 26.05.2008, 13:14:49 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.08.2025 - 22:53 |