![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam piszę sobie dla nauki pewne skrypty ostatnio i jak czegoś nie wiem to pytam
![]() Mam do was prośbę abyście odesłali mnie do jakiś źródeł jak zrobić pewien system ("losowania/przydzielania") Dokładniej Mam w bazie danych tabele zawodnicy // id // imie i nazwisko // klub // i np: 1 // Wacał Markowski // Wojownik Elbląg itd... Załóżmy, że mam 16 zawodników i skrypt ma losowo dobrać ich w prawy, z tym że musza być z innego klubu i to jest pierwsza runda. Potem skrypt z pozostałych 8 losuje między sobą z tym że jeżeli istnieje taka możliwość muszą być z różnych klubów i tak dalej aż do półfinału... Jakich funkcji użyć ? Może jakieś podpowiedzi / części kodu ? Może link do manuala Będę wdzięczny za każdą pomoc ![]() |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Losujesz pierwszego, potem dla niego szukasz drugiego z innego klubu.
Potem losujesz znowu jednego i dla niego drugiego z innego klubu. itd Gdy w danym losowaniu nie bedzie kolesia z innnego klubu, to wowczas losujesz z jego klubu -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
@UP
Dzięki za podpowiedź takie rozwiązanie jest dobre bo czy będę miał 30 czy 10 to się sprawdzi Oczywiście jeżeli liczba jest nie parzysta to przechodzi bez walki itd. I to sobię zrobie na if'ach ale jakiej funkcji użyć do losowania ? Byłbym wdzięczny bardzo za jakieś przykładowe kawałki kodu ![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
jesli robic bedziesz w bazie to
...order by rand() Przy tak malej liczbie rekordow jest to wystarczajace rozwiązanie -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
@UP
Wolałbym zrobić to jednak na innej zasadzie. Pobieram dane z bazy do tablicy. Wybieram pierwszego zawodnika z listy i losuję do niego z innym klubem -> Jak to napisać ? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Co ty z tym UPem? Przeciez wiem ze z dolem nie gadasz...
W bazie mozesz zrobic warunki w zapytaniu. Robiąc to na tablicy w php bedziesz musial latac i sprawdzac wszystko pokolei -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
A mógłbyś podać jakiś konkretny przykład bo właśnie ja widzę tylko taką moetodę po kolei...
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie bardzo rozumiem w czym problem. Napisalem ci krok po kroku co masz robic. Podalem ci jak sie losuje w mysql. Jaki masz konkretnie problem?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Podałeś mi tylko metodę sortowania wyników z bazy danych...
order by rand() i to rozumiem ale do tego warunku nie da się dopisać że nie mogę być z 1 drużyny... |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No juz takie podstawy jak
....WHERE ID_DRUZYNY<>ID_DRuZYNY_KOLESIA_DLA_KTOREGO_SZUKASZ juz sobie darowalem. Sadzilem ze umiesz korzystac z WHERE w zapytaniach... -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Ale takim sposobem dla każdego kolesia muszę szukać odzielnie... a ja nie będę miał stałej liczby tylko np będę musiał dopisać 10 zawodników to 10 będę musiał dorobić 10 zapytań ...
Nie ma jakiegoś innego sposobu > |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Ale takim sposobem dla każdego kolesia muszę szukać odzielnie No tak. Dokladnie to wynikalo z psedokodu jaki ci podalem.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Mógłby ktoś napisać mi jakiś przykład w PHP ?
Próbowałem to zrobić ale coś mi nie wyszło... ![]()
Niestety nie działa i chyba nie za bardzo ma prawo działać... |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
Po co pobrałeś rekordy jeśli z nich nie korzystasz :/ $result1 = pobierz wszystkich zawodnikow foreach($result1 as $v){ $result2 = pobierz zawodnika gdzie drużyna!=$v[druzyna] para: $v[imie] $result2[imie] } |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki wielkie ale coś nadal mi nie działa....
Ten post edytował Xart 24.04.2014, 16:43:06 |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
gdzie jest fetch_assoc? a w drugim fetch row
Ten post edytował Turson 24.04.2014, 16:43:46 |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Fakt ...
Poprawiłem i wyświetla ale nie tak jak chce ;/
Ĺukasz vs RafaĹ RafaĹ vs Ĺukasz Dominik vs RafaĹ Kuba vs Ĺukasz Diana vs RafaĹ Krystian vs Ĺukasz Marian vs Ĺukasz Szuh vs RafaĹ Każdy zawodnik może walczyć z każdym tylko jeden raz i ma to być dobrane losowo a nie wszystkie kombinacje Czyli jak masz np 8 zawodników to powinny wylosować się 4 walki np numery 1-4 5-8 2-3 6-7 albo 1-3 2-4 5-7 6-8 ITP a nie tutaj każdy walczy z każdy... ;/ Oczywiście ma to być poprostu losowanie... Dowolnie ma wylosować zawodników do siebie i tyle aby nie byli w tej samej drużynie chyba że nie ma innej możliwości Ten post edytował Xart 24.04.2014, 17:56:59 |
|
|
![]()
Post
#18
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Napisalem ci jak to zrobic.Czemu nie zrobisz jak napisalem?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 267 Pomógł: 6 Dołączył: 8.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Bo nie rozumiem tego co napisałeś - jak ty byś chciał to sprawdzać i kompletnie nie wiem jak zacząć. Mógłbyś mi to opisać krok po kroku z fragmentami kodu ? Byłbym bardzo wdzieczny nie zalezy mi zbytnio na czasie ale analizujac ten kod bym sie nauczył. Sory za błędy - tele
|
|
|
![]()
Post
#20
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Masz napisane:
"Losujesz pierwszego, potem dla niego szukasz drugiego z innego klubu." Czego tu nie rozumiesz? Masz napisac zapytanie, ktore wylosuje ci jednego uzytkownika. Potem masz napisac zapytanie, ktore wylosuje tez jednego uzytkownika, ale z innego klubu. Wszelkie niezbedne informacje jak to sie robi napisalem ci. Operacje te powtarzasz tyle razy ile razy cchesz miec par. Oczywiscie w kazdym zapytaniu musi sie znalezc warunek, by nie losowal wylosowanych juz userow. Ale to jest proste, bo wylosowanych userow bedziesz zapisywal w tablicy php a potem do kazdego zapytania przekazywal ID wylosowanych userow by nie bral ich pod uwage -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 5.07.2025 - 13:35 |