![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 20.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
mamy tabele:
Produkty - id INTEGER - cena INTEGER Opisy_produktow - id INTEGER - id_produktu INTEGER - id_jezyka INTEGER - opis TEXT Jezyki - id INTEGER - blank VARCHAR(255) w polu "blank" tablicy "Jezyki" przetrzyumujemy tekst inforacyjny typu: dla pl. - "brak informacji w jezyku polskim, wybierz inny jezyk", a dla np. ang. - "information in english not availiable, choose different language" powiedzmy, ze w sesji trzymamy id aktualnie uzywanego jezyka - chce wydobyc z bazy informacje o cenach produktow z opisami w aktualnym jezyku - a jesli takiego opisu dla aktualnego jezyka nie ma - chce dostac informacje "jezyki.blank" czy takie podejscie do wielojezykowosci ma sens dla duzych projektow? uprzejmie prosze o propozycje zapytan realizujacych wydobycie informacji o produktach w danym jezyku - ja nie umiem wymyslic zgrabnego rozwiazania tego problemu.... pozdrawiam, Lukasz moze nakresle problem troche dokladniej - w pokazanej wyzej strukturze, zalozmy, ze uzywamy jezyka o ID=1, i wyswietlamy informacje o produktach - uzywam takiego zapytania mysql:
problem pojawia sie, gdy pewien produkt nie ma opisu w rzadanym jezyku (wtedy jest on pomijany na liscie, a wedlug zalozen - powinna byc wyswietlana informacja z tabeli jezyki "brak informacji w jezyku polskim", lub odpowiednio przetlumaczony ten tekst na inne jezyki) wiadomo wiec, ze zapytanie powinno w FROM zawierac tabele jezyki:
oraz, ze SELECT powinien uwzgledniac warunkowosc wartosci kolumny opis:
skladajac wszystko w calosc otrzymujemy pewien wzor zapytania do dopracowania:
jednak nie umiem wymyslic zgrabnego warunku... (IMG:style_emoticons/default/sciana.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.09.2025 - 08:49 |