Autor Zpráva
Tomashekk
Profil
Mám funkce ve zvláštním souboru, ale jelikož tam mám více jazyků, tak mám souborů více. Ale chtěl bych to udělat v jednom.

Uvedu přímej příklad o co mi jde.
function titulek($link){
                $dotaz = 'SELECT `ID` , `autor` , `date` , `text_eng` , `popis_eng` , `name_eng` , `topic` FROM `cs_story` WHERE `ID` LIKE 1  ';

      $vysledek = mysql_query($dotaz, $link) or die ("SQL dotaz nešlo provést");
      while ($radek = mysql_fetch_array($vysledek)) //Nacte výsledný rádek do asociativního pole 
                                                                               { ?>
                     <h2><?php echo $radek['name_eng']; ?></h2>
                     <p class="popis"><?php echo $radek['popis_eng']; ?></p>
                     <p class="textik"><?php echo $radek['text_eng']; ?></p>
                                                                               <?php }
}


Tento kod bych potreboval udelat nejak takto

function titulek($link){
                $dotaz = 'SELECT `ID` , `autor` , `date` , `text_$session[‘jazyk‘]` , `popis_$session[‘jazyk‘]` , `name_$session[‘jazyk‘]` , `topic` FROM `cs_story` WHERE `ID` LIKE 1  ';
                     $vysledek = mysql_query($dotaz, $link) or die ("SQL dotaz nešlo provést");
                     while ($radek = mysql_fetch_array($vysledek)) //Nacte výsledný rádek do asociativního pole 
                                                                               { ?>
                     <h2><?php echo $radek['name_$session[‘jazyk‘]']; ?></h2>
                     <p class="popis"><?php echo $radek['popis_$session[‘jazyk‘]']; ?></p>
                     <p class="textik"><?php echo $radek['text_$session[‘jazyk‘]']; ?></p>
                                                                               <?php }
}

Šlo by to takhle nějak udělat?
Taps
Profil
Tomashekk:
tomuto nějak nerozumím
`text_$session[‘jazyk‘]` 
Tomashekk
Profil
Taps:
no prostě potřebuju udělat jeden univerzální soubor.. nevím jak to tam právě zapsat aby echoval $radek['text_cs'] a když bude nastavená ájina, aby echoval $radek['text_eng'] ... už chápeš?
Taps
Profil
Tomashekk:
kde bude nastavená jiná ?
Tomashekk
Profil
Taps:

mám celý web, který je dvoujazyčný... a v $session['jazyk'] je uloženo buď cs nebo eng
Taps
Profil
Tomashekk
pokud máš udaje uložení v session to znamená že na webu je nějaké přihlášování. Zkus napsat strukturu tabulky přihlašovaného uživatele + strukturu tabulky cs_story
nightfish
Profil
Tomashekk:
ano, jde to, jen musíš vzít v úvahu, že proměnné se nevyhodnocují mezi apostrofy
osobně bych pro přehlednost volil

function titulek($link){
  $jazyk = $_SESSION['jazyk'];
  $dotaz = 'SELECT `ID` , `autor` , `date` , `text_'.$jazyk.'` , `popis_'.$jazyk.'` , `name_'.$jazyk.'` , `topic` FROM `cs_story` WHERE `ID` LIKE 1  ';
  $vysledek = mysql_query($dotaz, $link) or die ("SQL dotaz nešlo provést");
  while ($radek = mysql_fetch_array($vysledek)) //Nacte výsledný rádek do asociativního pole 
  { ?>
    <h2><?php echo $radek['name_'.$jazyk]; ?></h2>
    <p class="popis"><?php echo $radek['popis_'.$jazyk]; ?></p>
    <p class="textik"><?php echo $radek['text_'.$jazyk]; ?></p>
  <?php }
}
Tomashekk
Profil
nightfish:
tak to chodí, díky, ale je v tom problém
když je v $jazyk = "eng";
tak se
<p class="textik"><?php echo $radek['text_'.$jazyk]; ?></p>
vypíš, ela když tam je "cs" tak nikoli , ale text_cs je plnej
Garen
Profil *
zkus misto
echo $radek['text_'.$jazyk];
dat
echo $radek["text_$jazyk"];
tiso
Profil
Garen: a to má aký význam?
Garen
Profil *
tiso: jedno mi funguje a to druhe ne :D
nightfish
Profil
Tomashekk:
v obou případech (jak eng tak cs) si nech vypsat $dotaz, spusť si ho pomocí phpMyAdmina
pokud tam ta data jsou, tak není důvod, aby se nevypsala

Garen:
oba zápisy v [#9] jsou ekvivalentní

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0