gladiror
24.05.2006, 10:49:55
Witam!
Mam maly problem. Otóz chciałem zrobić coś takiego, że jak użytkownik wchodzi na strone to zostaje sprawdzone z jakiego jest kraju (z tym sobie poradzilem). Gdy juz mamy z jakiego jest kraju to zeby przypisal do niego jezyk (jak jest z polski to polski, jak angielski to angielski). Moj problem polega na tym, że nie jestem pewien jak zrobic jezyki. Chodzi o to, czy teksty polskie poprawiac w plikach czy wszystko wrzucic do bazy danych i z bazy danych odczytywac teksty? Jezeli ktos ma jakies z tym doswiadczenie to poprosze o jakies sugestie...
Pozdrawiam
Gość
24.05.2006, 11:12:12
Raczej baza będzie lepsza. Zawsze to wygoda wyszukiwania sortowania itp.
Pytanie tylko czy trzymać wszystko w 1 tabeli czy w wielu.
Jeśli danych będzie naprawde sporo to można i w kilku z jakimiś prefixami językowymi a jak mało to raczej wszystko do jednego z 1 rekordem oznaczającym język i jazda
Gość
24.05.2006, 21:28:20
Tylko, ze jak wybiore tabele to zeby "zmieniac teksty" trzeba do kazdego robic oddzielne zapytanie. Np. jak wstawiasz pole "haslo" to musisz dac zapytanie, po czym dac pole itd...
Dlaczego oddzielne zapytanie?
<?php
switch ($language) {
case 'englisz':
$prefix = 'en_';
break;
case 'polski':
$prefix = 'pl_';
break;
//itd
default:
$prefix = 'en_';
};
$sql = 'SELECT * FROM '.$prefix.'lang';
?>
Zakładam, że posiadasz w różnych tabelach tłumaczenia. Konwencja nazewnictwa tabel to: en_lang, pl_lang itd.
TomASS
24.05.2006, 22:45:38
Cytat
Raczej baza będzie lepsza. Zawsze to wygoda wyszukiwania sortowania itp.
Raczej nie

Przynajmnie wg mnie - masz rację baza danych świetnie sobie radzi z sortowaniem. Ja bym do trzymania tłumaczeń użył plików, podpatrz jak ma to zrobione wiele poważnych projektów (ot choćby taki phpmyadmin):
<?php
$strAfterInsertNewInsert = 'Wstawienie nowego rekordu';
$strAll = 'Wszystko';
$strAlterOrderBy = 'Sortowanie tabeli wg';
$strAnalyzeTable = 'Analizowanie tabeli';
$strAnd = 'Oraz';
$strAnIndex = 'Do %s dodany został indeks';
$strAny = 'Dowolny';
?>
i przy pomocy funkcji
printf napisy są "obrabiane".
Zobacz na
ten temat.
banpl
24.05.2006, 23:03:21
ale w ten sposób mozna trzywac w plikach texty ktore sa stale, natomiast dane ktore bedzie zawierala strona, np newsy w roznych jezykach juz trzeba trzymac w bazie
mike
24.05.2006, 23:07:19
A ja polecam do plików config
YAMLa. Format z którego korzysta framework
Symfony.
Ewentualnie pliki
.ini
gladiror
26.05.2006, 00:15:18
Pobawilem sie baza i jest to troche uciazliwe robienie tego w bazie... Sa oczywiscie tego plusy:
jak dodasz teksty w bazie to nie musisz w kilku plikach zmieniac skryptów. Natomaist minus to duzo zabawy z poprawianiem (łatwiej i szybciej ejst poprawic w pliku niz w bazie danych. Poza tym z baza jest troche zabawy i wydaje mi sie, ze jest wiecej kodu...
Mam pytanie odnosnie YAML - co to jest takiego? wpisalem na forum ale tylko 2 posty znalazł... I jakos nic sensownego nie ma wytlumaczone...
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.