Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pomocy - strona wielojezykowa PHP/MySQL, Zmiana wyboru tablicy dla jezykow
-Guest-
post
Post #1





Goście







Witam.
Jestem "BARDZO POCZATKUJACY" jesli chodzi o php. W ramach nauki postanowilem przerobic strone m.in. na wielojezykowa. Podczas przerabiania natrafilem na taki problem. Opis kategorii musze przechowywac w tablicy bazy danych. Na poczatku tablica byla taka:

re2_categories
CategoryID
CategoryName

Ja przerobilem ja na taka:

re2_categories
CategoryID
CategoryNamepl
CategoryNameen
CategoryNamees

Kod tworzacy menu poczatkowo wygladal tak:
Kod
$qi = "select * from re2_categories order by CategoryID";
$ri = mysql_query($qi) or die(mysql_error());

$Account = "<table width=200>\n";

if(mysql_num_rows($ri) > '0')
{
    while($ai = mysql_fetch_array($ri))
    {
  $Categories .= "<tr>\n\t<td bgcolor=#ECECEC><a class=BlackLinkB href=\"search.php?c=$ai[CategoryID]\">[COLOR=Red]$ai[CategoryName]</[/COLOR]a></td>\n</tr>\n";


Informacje na temat jezyka sa przechowane w zmiennej $lang ktora odpowiednio ma wartosci: pl, en i es. "Poprawilem" skrypt i teraz wyglada tak:
Kod
$qi = "select * from re2_categories order by CategoryID";
$ri = mysql_query($qi) or die(mysql_error());

$Account = "<table width=200>\n";

[COLOR=Red]//Multilanguage category description
if($lang ='pl') {
    $langcat = $ai[CategoryNamepl]; }
elseif ($lang ='en') {
    $langcat = $ai[CategoryNameen]; }
elseif ($lang ='es') {
    $langcat = $ai[CategoryNamees]; }[/COLOR]

if(mysql_num_rows($ri) > '0')
{
    while($ai = mysql_fetch_array($ri))
    {
  $Categories .= "<tr>\n\t<td bgcolor=#ECECEC><a class=BlackLinkB href=\"search.php?c=$ai[CategoryID]\">[COLOR=Red]$langcat</[/COLOR]a></td>\n</tr>\n";

... i bydle nie dziala :-( . Jesli ktos wie co zrobilem zle lub wie jak to rozwiazac w inny sposob to bardzo prosze o pomoc.
Dziekuje

Roovio
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bigZbig
post
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


phpBB trzyma w tablicy teksty interfejsu, a tresc strony pozostaje w orginale. Jesli twoim celem jest wyswietlanie newsow w trzech wersjach jezykowych to rozwiazanie zastosowane w phpBB na nic sie nie zda.

W takim wypadku jestes zmuszony albo utworzyc trzy tabele w bazie np. newsy_pl, newsy_en, newsy_es, co uwazam za lepsze rozwiazanie, albo jak to widac wyzej potroic wszystkie pola tekstowe w danej tabeli.
Go to the top of the page
+Quote Post

Posty w temacie


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: 9.10.2025 - 10:38