![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 186 Pomógł: 0 Dołączył: 10.03.2004 Skąd: K-ce Ostrzeżenie: (50%) ![]() ![]() |
Witam,
Nie lubie prośić o pomoc a zwłaszcza zwązaną z php i MySQL. ale nie wiem jak to rozgryść. Więc mam skrypt językowy który zmienia mi zawartośc strony na podstawie parametru lang w adresie np : ?adres=test&lang=pl i w/w adresie strona ma być w języku polskim itp... Wszystko ma być wyciągane z mysql a nie z pliku , z pliku to proste. nie trzeba nic tlumaczyć moja struktura bazy wyglada tak : [sql:1:dd1d5d7401] # # Table structure for table 'lg' # CREATE TABLE lg ( wartosc text NOT NULL, pl text NOT NULL, de text NOT NULL ); # # Dumping data for table 'lg' # INSERT INTO lg VALUES ( '$lang001', 'Ty ', 'Du'); [/sql:1:dd1d5d7401] Chciał bym zrobić ze skrypt sie nie wykona ale wyswetli w postaci takiej [php:1:dd1d5d7401]<?php $lang001 = 'Ty'; lub $lang001 = 'Du'; ?>[/php:1:dd1d5d7401] w zależności od wersji jezykowej ja mialem cos takiego : [php:1:dd1d5d7401]<?php $db = mysql_connect("localhost", "root", "roqogo+2"); mysql_select_db("lang", $db); $pol = mysql_query ("SELECT * FROM lg WHERE $lang = '$lang'"); while($w = mysql_fetch_array($pol)) { $wartosc= $w["wartosc"]; $pl= $w["pl"]; $de= $w["de"]; eval("$wartosc = '$lang';"); } echo "test jezykowy :<br>"; echo "$lang001"; ?>[/php:1:dd1d5d7401] moze jakie propozycje ? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 208 Pomógł: 0 Dołączył: 19.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Zauważyłeś, że podałeś dane do bazy?
--- A nie lepiej tak:[php:1:320b7a8c8b]<?php mysql_connect(); mysql_select_db( 'aukcja' ); $result = mysql_query( 'SELECT wartosc, ' . $lang . ' FROM lg' ); while ( list( $variable, $value ) = mysql_fetch_row( $result ) ) { $variable = subStr( $variable, 0, 1 ) == '$' ? subStr( $variable, 1, strLen( $variable ) ) : $variable; ${$variable} = $value; } ?>[/php:1:320b7a8c8b]--- IMO to jest bezsensowny pomysł (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) --- Najlepiej zrobić jedną tabelę 'languages' z polami lang_id (automatycznie generowany ID), lang_name_english (np. Polish), lang_name_local (np. Polski), lang_charset (np. ISO-8859-2), lang_code (2-3 literowy kod kraju, np. PL). Później drugą tabelę 'languages_values' z polami value_id, lang_id (relacja do poprzedniej tabeli), value_name (unikalna nazwa identyfikująca wartość, np. example, add, delete), value_text (wartość, np. (kolejno): przykład, dodaj, usuń). Później w zależności jaki kto ma język wybierasz sobie zapytaniem[sql:1:320b7a8c8b]SELECT v.value_name, v.value_text FROM languages l, languages_values v WHERE l.lang_code = $lang ORDER BY v.value_name ASC[/sql:1:320b7a8c8b] W skrypcie wykonujesz zapytanko i tworzysz tablicę:[php:1:320b7a8c8b]<?php // zapytanko... $result = ...; $LANG = array(); while ( $row = mysql_fetch_row( $result ) ) { $LANG[ $row[0] ] = $row[1]; } // odwolanie do zmiennej // wynik: przykład print $LANG['example']; ?>[/php:1:320b7a8c8b] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.10.2025 - 18:56 |