![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 20.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam problem ze stworzeniem struktury bazy danych. Baza ma być zaprojektowana tak aby byla mozliwosc dodawania wielu jezykow (nieogranizona ilość ![]() druzyna -id -nazwa -opis -adres -ligaid liga -id -nazwa -krajid kraj -id -nazwa kraje -id -krajid -jezykid -nazwa jezyk -id -nazwa -skrot Z tej struktury tylko element kraju wydaje sie być dobrze zapisany. Ma ktoś może pomysł jak zaprojektować bazę dla wszystkich tych elementów? Prosze o odpowiedź, z góry dzięki |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
jezyk: idjezyk | nazwa | skrot
liga: idliga | idkraj liga_jezyk: idliga | idjezyk | nazwa zeby pobrac dane z tabeli liga w jezyku o id = 1
-------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 595 Pomógł: 282 Dołączył: 24.09.2007 Skąd: Reda, Pomorskie. Ostrzeżenie: (0%) ![]() ![]() |
z ta nieograniczoną ilością bym nie przesadzał. typowe serwisy obsługują 2, 3 maks. 4 języki...
w takich zastosowaniach stosuję nieco inną konstrukcję (ze względu na prostotę budowy zapytań i uniknięcie zbędnych JOIN'ów). w każdej tabeli, w której są pola wielojęzyczne, powielam te pola dodając przyrostek tak jak określenie domeny www (pl - polski, uk - angielski, de -niemiecki, itd.) czyli na przykładzie twojej tabelki: druzyna -id -nazwa -opis_pl -opis_uk -opis_de -adres_pl -adres_uk -adres_de -ligaid a potem w kodzie php:
i wtedy w wynikach odwołuję się do pól 'opis' i 'adres' i mam w nich dane w odpowiednim języku ... co jest dość istotne w tym rozwiązaniu, obsługa kolejnego języka wymaga tylko dodania odpowiednich pól w bazie danych - kod PHP nie zmienia się... Ten post edytował nevt 21.03.2008, 08:33:19 -------------------- - Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... - |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
slabe rozwiazanie gdy masz duzo tabel i chcesz dodac kolejny jezyk.
-------------------- aplikacje internetowe | Symfony
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 595 Pomógł: 282 Dołączył: 24.09.2007 Skąd: Reda, Pomorskie. Ostrzeżenie: (0%) ![]() ![]() |
Cytat slabe rozwiazanie gdy masz duzo tabel i chcesz dodac kolejny jezyk. heh... rozbawiłeś mnie... mam skrypt, całe 7 linijek, który przelatuje wskazaną bazę i dodaje / usuwa / zmienia wskazany język we wszystkich tabelkach. w bazie z 100 tabel wykonuje sie ok. 3 sekund. oj jak łatwo krytykować cudze rozwiązania nie przedstawiając wad własnych propozycji ![]() Ten post edytował nevt 21.03.2008, 10:25:12 -------------------- - Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... - |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 385 Pomógł: 55 Dołączył: 1.03.2005 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
no coz. niech autor tematu sam sobie wybierze rozwiazanie w zaleznosci od swoich potrzeb.
np title, description, keywords, content, title2, content2 dla 8 jezykow bedzie 6*8 = 48 kolumn + jeszcze inne kolumny z konfigiem to wychodzi ponad 50 kolumn dobrze to rozumiem? mi sie wydaje ze tabele powinny byc zapelniane w dol a nie w bok. Ten post edytował AxZx 21.03.2008, 11:40:39 -------------------- aplikacje internetowe | Symfony
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 05:35 |