![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 658 Pomógł: 95 Dołączył: 20.12.2005 Skąd: N54,35° E18,63° (Gdańsk) Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam pytanie, jak można "połączyć" użytkowników w pary.
Powiedzmy mam 10 osób zalogowanych online. Chcę każdą z nich połączyć w "dwójki" randomowo dobierając drugą osobę ;-) Wchodzą wszyscy jednocześnie np. na wybierz.php - i oczekują na odpowiedź (np. za pomocą ajax'a.) Wie może ktoś jak do tego się zabrać? ![]() Ten post edytował b4x 6.04.2009, 21:14:24 -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Ok, ale jak masz tych userów reprezentowanych? Rekord w DB? Pliki? Sam zapis user1:user2?
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 658 Pomógł: 95 Dołączył: 20.12.2005 Skąd: N54,35° E18,63° (Gdańsk) Ostrzeżenie: (0%) ![]() ![]() |
Ok, ale jak masz tych userów reprezentowanych? Rekord w DB? Pliki? Sam zapis user1:user2? Nie no normalnie w bazie mam użytkowników id | login | haslo | mail | last_action - ze strukturą nie ma problemu - zawsze mogę coś dodać. -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 4 069 Pomógł: 497 Dołączył: 11.05.2007 Skąd: Warszawa ![]() |
albo nowa tablica para
id |user1 |user2 albo w istniejącej dodać pole para i tam wpisać id/nick osoby nr2 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 658 Pomógł: 95 Dołączył: 20.12.2005 Skąd: N54,35° E18,63° (Gdańsk) Ostrzeżenie: (0%) ![]() ![]() |
@Spawnm - mi chodzi jak to 'wylosować', nie losując już osób w parach.
- Na starcie nikt nie ma pary. ![]() Może "jaśniej" to opiszę. 1. Użytkownik wchodzi sobie na wybierz.php. 2. W pliku wybierz.php ma mu "wylosować" drugą osobę do pary, z tych wszystkich które są aktualnie na wybierz.php, i nie posiadają pary. 3. Jednego z drugim ma połączyć - i poinformować obojga. Ten post edytował b4x 6.04.2009, 21:21:12 -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 73 Pomógł: 15 Dołączył: 2.04.2009 Skąd: koszalin Ostrzeżenie: (0%) ![]() ![]() |
Może tak w tablicy oczywiście twoje id
Tablice sobie mieszasz (losowo się układają elementy) i układasz w pary 1z2, 3z4 itd.
Pozdrawiam -------------------- kantek.com.pl
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat - ze strukturą nie ma problemu - zawsze mogę coś dodać. Najprościej byłoby chyba zrobić coś takiego: dodajesz kolumnę pair, która by zawierała info o drugim użytkowniku ("na krzyż") i przy wybieraniu sprawdzasz, czy ta kolumna jest pusta. Choć dużo bardziej eleganckim (relacyjnym) rozwiązaniem byłoby IMHO rozdzielenie tego na osobną tabelę z powiązaniami. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 658 Pomógł: 95 Dołączył: 20.12.2005 Skąd: N54,35° E18,63° (Gdańsk) Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem na razie tabelę `queue`:
id | UserID | ConnectedTo | PairID | Status | 1 | VKodK | vtEKvotEorvre | VrmvetASN | 2 2 | vtEKvotEorvre | VKodK | VrmvetASN | 2 Przy wejściu na wybierz.php dodaje użytkownika do kolejki, szukam mu osoby do rozmowy, po załadowaniu strony (SELECT * FROM `queue` WHERE `UserID` = "'.$UserID.'" AND `Status` = "1"') jeśli nie znalazło, odpytuje ajaxem - do czasu znalezienia drugiej osoby. Po znalezieniu
Początkowo: ConnectedTo | PairID - jest puste. Jest to dobrym rozwiązaniem ;-) ? Ten post edytował b4x 7.04.2009, 18:33:57 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 20.07.2025 - 07:12 |