Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak zrobione są "plecaki" w grach www?
Forum PHP.pl > Forum > PHP
kongi90
Witam.

Chciałbym napisać skrypt podobny do "plecaków" w różnych grach www.
I nie wiem na jakiej zasadzie jest to zrobione.

Jak w bazie danych mysql zapisać w tabeli jakie przedmioty posiada dany user?? Gdyby 1 przedmiot mógł posiadać tylko 1 user to wtedy bym sobie poradził a jak zapisać np takie coś przedmiot o id 1 mają gracze o id 2/5/8/14 a przedmiot o id 2 mają gracze o id 1/3/5/8/20??

Bardzo proszę o podanie jakiś przykładów jak to zapisać.


Problem jest w tym że kilku graczy może mieć ten sam item.
kamillo121
Najprostszy sposób jaki się nasuwa to po prostu do jednej tabeli np: plecak wrzucasz rekordy typu:

id | użytkownik | przedmiot_id

Potem sobie pobierasz rekordy dla użytkownika o jakimś tam ID.



/tak na boku to ten temat powinien chyba być w przedszkole, tam jest do tego miejsce.
kongi90
Dzięki. Bardzo mało mi to mówi.
Jednak rozjaśniło mi to troszkę jak to jest zrobione.

Spróbuje coś napisać a jak będę miał problem to napisze.

Dzięki.
zend
Zrób tabele
users: {user_id, nickname}
rel_user_item {id, user_id , item_id, quantity}
items {item_id , name}

Jeśli chcesz poczytać to szukaj "relacja wiele do wielu", potem jeszcze tylko google => "mysql left join" i powinieneś dostać to czego oczekujesz

quantity to ilość oczywiście happy.gif
kamillo121
Dobra spróbuję prościej, żebyś nie stracił całego dnia na "rozszyfrowanie mego postu" smile.gif
Tworzysz np tabele w bazie danych Przedmioty_uzytkowników o budowie:
id | uzytkownik_id | przedmioty_id

Id - nr rekordu
uzytkownik_id - nr użytkownika z tabele użytkownik czy jak tam sobie nazwałeś
przedmioty_id - nr przedmiotu z tabeli przedmioty

Teraz jeżeli użytkownik doda przedmiot do plecaka to dodajesz rekord do bazy

VALUE użytkownik_id,przedmioty_id
(id pomijasz z wiadomych przyczyn)

Jeżeli będziesz chciał pobrać przedmioty użytkownika np o ID 5 to po prostu zarywasz do bazy mysql pytanie :
SELECT * FROM Przedmioty_uzytkownik WHERE uzytklownik_id=5
Tyle smile.gif

//oczywiście tutaj pominąłem pobieranie nazwy przedmiotu i innych danych ale o tym napisał akurat kolega wyżej
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.