TahaCan adlı üyeden alıntı: mesajı görüntüle
Çok dilli bir script yapıyorum, çoğu kısım tamam ama verileri seçilen dile göre çektiremiyorum.

VT tablosu http://icecream.me/2565c7a7ab31ee74b30c3ce6c86a4abe bu şekilde

$langdata = $db->prepare("SELECT * FROM translations WHERE lang_code=:lang_code");
$langdata->execute(array('lang_code' => $_SESSION['lang']));
$lg = $langdata->fetch(PDO::FETCH_ASSOC);

if (isset($_GET['lang'])) {
    $lang = $_GET['lang'];
    $_SESSION['lang'] = $lang;


    if (empty($_SESSION['lang'])) {
        $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);

        if (isset($_SESSION['lang'])) {
            $lang = $_SESSION['lang'];
        } else {
            $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);
        }
    }

}
Kod ıse bu şekilde

Burada verileri dil kodu ve text line göre çekebilirim.

echo $lg['trans_text']; bu şekilde deniyorum mevcut olanı çeviritor ancak text numarasına göre çektirmem gerekiyor.

Şimdiden teşekkür ederim
Açıkçası Soru nu tam olarak anlamadım fakat hata gördüğüm şu yerler var.

$langdata = $db->prepare("SELECT * FROM translations WHERE lang_code=:lang_code");
//Burada session değeri ile db den veri çekiyorsun.
$langdata->execute(array('lang_code' => $_SESSION['lang']));
$lg = $langdata->fetch(PDO::FETCH_ASSOC);
 //Burada ise URL den gelen lang değerini kontrol edip; session'u lang a eşitliyorsun. Bunu neden yaptığını anlamadım. Session lang değeri var zaten ki db den veri çekiyorsun.
//Bu if kodu şöyle olması gerekiyor sanırım ya da yukardaki veritabanında session ile değilde URL den gelen lang ile sorgu yap. Örnek olması gereken kodu aşağıda bırakıyorum
if (isset($_GET['lang'])) {
    $lang = $_GET['lang'];
    $_SESSION['lang'] = $lang;
 
 
    if (empty($_SESSION['lang'])) {
        $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);
 
        if (isset($_SESSION['lang'])) {
            $lang = $_SESSION['lang'];
        } else {
            $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);
        }
    }
 
}


if (isset($_GET['lang'])) {
$langdata = $db->prepare("SELECT * FROM translations WHERE lang_code=:lang_code");
//$langdata->execute(array('lang_code' => $_SESSION['lang']));
$langdata->execute(array('lang_code' => $_GET['lang'] ));
$lg = $langdata->fetch(PDO::FETCH_ASSOC);
//if (isset($_GET['lang'])) {
    $lang = $_GET['lang'];
    $_SESSION['lang'] = $lang;
 
 
    if (empty($_SESSION['lang'])) {
        $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);
 
        if (isset($_SESSION['lang'])) {
            $lang = $_SESSION['lang'];
        } else {
            $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 3);
        }
    }
 
}