Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skomplikowana operacja
Forum PHP.pl > Forum > PHP
Walas
Witam was
Podobny temat zacząłem na innym forum ( http://www.webtips.pl/index.php?showtopic=...amp;#entry93460
) ale polecono mi tutaj napisac. Żeby nie było skopiuje wszystko z wyżej podanej strony.

Potrzeba na stworzenie corazto bardziej skomplikowanych stron chyba już osiągnęła szczyt biggrin.gif

Małe intro:

Mamy dwie tabele "Medale" i "Users". Powiedzmy że budowa wygląda tak:

Kod
USERS
+--+----+--------+---------+
|ID|Nick|MEDAL1|MEDAL2|
+--+----+--------+---------+

Kod
MEDALE
+--+------+-----+-----------+
|ID|Nazwa|Opis|img_name|
+--+------+-----+-----------+

|1 |MEDAL1|sss|medal_1|
|2 |MEDAL2|sss|medal_2|


"img_name" to taki identyfikator ale to inna sprawa (używane do <img src=gfx/medale/medal_$row[img_name].jpg>)

no i teraz mam taki problem. Powiedzmy że użytkownik loguje się i wchodzi do menu usera. Teraz chce zobaczyc swoje medale.

Ważne!
MEDAL1 i MEDAL2 muszą odpowiadac wierszą z MEDALE czyli tabela MEDALE ma w sobie dwa wiersze z NAZWA MEDAL1 i MEDAL2

Teraz jeśli w MEDAL1 w USERS w wierszu usera jest np. TRUE to wyświetli się obrazek a jeśli nie to nie.

Ważne 2!
W tabelach nie ma wyżej określonej liczby MEDALi, może byc nawet MEDAL1 do MEDAL999, więc jeśli do tabeli MEDALE dodany zostanie MEDAL3 tabele beda wygladac tak:(w tabeli USERS pojawi się już MEDAL3 ponieważ zapytanie w kodzie php będzie dodawało kolumnę)
Kod
USERS
+--+----+--------+---------+--------+
|ID|Nick|MEDAL1|MEDAL2|MEDAL3|
+--+----+--------+---------+--------+

MEDALE
+--+------+-----+-----------+
|ID|Nazwa|Opis|img_name|
+--+------+-----+-----------+

|1 |MEDAL1|sss|medal_1|
|2 |MEDAL2|sss|medal_2|
|3 |MEDAL3|sss|medal_3|


Takie zadanie to chyba na jakimś egzaminie powinno byc haha.gif

ale prosze was koniecznie o pomoc


PS.
Chodzi ogólnie o to aby user ujżał medale, które mu przyznano
Ziels
I co? Dla każdego usera osobna tabelka mysql?

W tabelce userów jest sobie pole "medale" a w nim poprostu medale zapisane tak "medal1;medal2;medal3" - jaki problem?
Cienki1980
Przerób tabele w SQL'u i zrób coś takiego:
Tabela USER:
id_user - auto_increment
nick - varchar
Tabela MEDALE
id_medal - auto_increment
nazwa - varchar
opis - text
img_name - varchar

Tabela USER_MEDALE
id - auto_increment
id_user - int
id_medal - int

Nie musisz rozbudowywać tabeli USER. Każdy medal dla użytkownika wpisujesz do tabeli USER_MEDAL, podając tylko id_usera i id_medalu.

Wyciągając dane o medalach użytkownika proste zapytanie korzystające z JOIN i bangla pięknie.
Walas
dobra już wiem jak to rozwiąza wystarczyło doda tabele która pełniła by funkcję przechowywalni informacji kto ma jaka odznake
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.