Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Serwis i 3 jezyki
kielich
post
Post #1





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


Witam tworze serwis i gdzie musze miec 3 jezyki.Chciałbym zobaczyc wasze sugestie jak mozna to fajnie i szybko wykonac przy małym projekcie zrobiłbym w bazie osobne kolumny jak i w panelu .Ale to jest troszke wiekszy projekt wiec czy to jest dobre rozwiązanie (IMG:style_emoticons/default/questionmark.gif)

czekam na odp
Z góry dzieki za wypowiedzi
Go to the top of the page
+Quote Post
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

Ostrzeżenie: (0%)
-----


Sesje + $_GET, w MySQL rozne pola do roznych jezykow
Go to the top of the page
+Quote Post
Kszyhuu
post
Post #3





Grupa: Zarejestrowani
Postów: 157
Pomógł: 32
Dołączył: 24.08.2009

Ostrzeżenie: (0%)
-----


Ja u siebie robiąc kilka wersji językowych zrobiłem po prostu kilka katalogów na serwie i każdy z nich przechowywał pliki w danym języku. Dla przykładu:
  1. Polski- www.xxx.pl/pl/index.php
  2. Angielski- www.xxx.pl/en/index.php
  3. Niemiecki- www.xxx.pl/de/index.php
  4. Rosyjski- www.xxx.pl/rus/index.php


I tak dalej. Moim zdaniem to w miarę wygodne rozwiązanie. Przynajmniej dla mnie jest wystarczająco dobre. (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Struktura bazy jest zależna od ilości języków, a najbardziej, od możliwości rozszerzenia o kolejne.

Jeśli liczba języków jest ustalona i niezmienna, IMHO można po prostu utworzyć tabelę w której będą dodatkowe kolumny dla poszczególnych języków (tytuł, treść etc).

W przypadku wielu języków oraz możliwości rozbudowy o kolejne skłaniałbym się do opcji, że wpis w kolejnym języku będzie kolejnym rekordem w tabeli. Pola pozostają te same dla każdego języka.

edit up:
A co w przypadku, gdy ktoś stronę ma na bazie a nie na plikach? Wnioskując po tagach tematu o takie rozwiązanie chyba chodzi...

Ten post edytował vokiel 18.10.2009, 13:09:48
Go to the top of the page
+Quote Post
Kildyt
post
Post #5





Grupa: Zarejestrowani
Postów: 869
Pomógł: 53
Dołączył: 20.10.2003
Skąd: Przeworsk

Ostrzeżenie: (0%)
-----


Zastosowanie CSS-a niestety na razie jest raczej nierealne, dzięki wielkiemu wsparciu IE. (IMG:style_emoticons/default/smile.gif)
Sądzę, że praca na plikach tekstowych będzie bardziej wydajna. Wystarczy na początku załadować dane do tablicy i później na niej działać.
Go to the top of the page
+Quote Post
kielich
post
Post #6





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


no tak czyli jest kazdy bedzie w osobnym katalogu to np. wystawiajac przedmiot musze np. wystawic go 3 razy kazdy w innym jezyku a to torszke meczace np przy ilosc 20 tys przedmiotów do kazdego inny opis to tak troche ...

(IMG:style_emoticons/default/questionmark.gif)

Ma ktoś jeszcze jakieś rozwiażania (IMG:style_emoticons/default/questionmark.gif)

.
Go to the top of the page
+Quote Post
potreb
post
Post #7





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Nie wiem, jeżeli masz wszelkie dane w bazie danych, wystarczy że dla jakiejś tabeli np news będzie dodatkowe pole lang gdzie zapisujesz np nr albo skrót języka. Katalogi też możesz dodać jednak możesz to zrobić mod_rewrite dla języków o ile taki moduł posiadasz. Dane o języku zapisać w sesji i nie ma problemu, lub w ciachu.

Ten post edytował potreb 18.10.2009, 15:44:07
Go to the top of the page
+Quote Post
vokiel
post
Post #8





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Cytat(kielich @ 18.10.2009, 16:22:09 ) *
no tak czyli jest kazdy bedzie w osobnym katalogu to np. wystawiajac przedmiot musze np. wystawic go 3 razy kazdy w innym jezyku a to torszke meczace np przy ilosc 20 tys przedmiotów do kazdego inny opis to tak troche ...


A jak sobie wyobrażasz wstawić przedmiot w trzech językach nie robiąc tego 3 razy? (mam na myśli nie pisząc trzech opisów)
Możesz co jedyne dać link do google translate, jednak jakość takiego tłumaczenia może zniechęcić...

Jeśli, masz zdjęcia niezależne od produktu, nazwę również (z tym już może być gorzej), to właściwie produkt w każdym języku różni się tylko opisem.

Czyli tabela produktów w bazie będzie jedna, tylko albo dodatkowe pola na opisy (lub opisy i nazwy) w różnych językach, bądź oddzielna tabela na same opisy i/lub nazwy.
Go to the top of the page
+Quote Post
kielich
post
Post #9





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


NO tak ale i tak bede musiał to wstawic 2 razy raz w pl a raz w np. en czyli np. mam w panelu dodaj newsa i mam dwa textarea pl i en i tu musze napisac w pl i doac i nastepnie w en i dodac czy to jest dobre (IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
potreb
post
Post #10





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Panie jak dwa textarea, możesz zrobić 256 textarea dla wszystkich swiatowych języków.
masz normalny formularz + opcjami select pl en fra i dodajesz tekst do bazy przypisanego dla konktretnego języka.

Ten post edytował potreb 18.10.2009, 15:56:43
Go to the top of the page
+Quote Post
kielich
post
Post #11





Grupa: Zarejestrowani
Postów: 442
Pomógł: 4
Dołączył: 28.12.2008
Skąd: Warszawa

Ostrzeżenie: (20%)
X----


OK czyli juz wszytsko rozumiem wiec mam jeszcze jedna kwestie napisze tu zeby nie zakłądac nowego tematu:
Wiec powiedz mam kategorie i produkty w kazdym produkcie jest nazwa_kategorii i wyciagam ... WHERE nazwa_kategorii=GET no ale co bedzie jak mam przypisane do tej kategorii z 5 tys produktów i zminie nazwe kategoii wtedy w tabeli z produktami nie bedzie dobrej nazwa_kategorii bo ja zminiłem co za tym idzie wszystkie produkty (5tys) wystawiac raz jeszcze ;/ albo zmienic ich nazwa_kategorii ;/
Go to the top of the page
+Quote Post
potreb
post
Post #12





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Nie robisz where nazwa_kategorii tylko where id_kategorii. Operuj na kluczach id. Jeżeli chodzi o samą tabelę categorii, możesz utworzyć dodatkową dla en. Wg ogólnie przejrzanych cms-ów to większość stosuję metodę nowych tabel dla języków, bo wtedy operować jest o wiele łatwiej.
Jeżeli chcesz mieć rozbudowany sklep to lepiej jak zrobisz dla każdego z języków własne tabele, lub prefixy do nich i zarządzanie nimi będzie tez łatwe.

Ten post edytował potreb 18.10.2009, 16:04:45
Go to the top of the page
+Quote Post
vokiel
post
Post #13





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Zrób sobie tabelę: CATEGORIES z polami ID, NAME
Czyli
Kod
ID | NAME
1  | Kategoria 1
2  | Kategoria 2


Teraz w produktach np tak: PRODUCTS: ID, CATEGORY_ID, NAME_PL, NAME_EN, DESC_PL, DESC_EN....
Kod
ID, CATEGORY_ID, NAME_PL, NAME_EN, DESC_PL, DESC_EN
1  | 1   | Nazwa polska | English name | Polski opis danego produktu | English description of the product
2  | 1   | Nazwa pol druga | Second English name | Polski opis drugiego produktu | English description of the second product


Teraz zmieniając nazwę w tabeli CATEGORIES nic nie zmieniasz w tabeli z produktami, one dalej są aktualne.

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 15:06