• 06-09-2009, 19:01:32
    #1
    Merhaba tarayıcı diline göre bi dosya include etmek istiyorum. yardımcı olurmusunuz?

    Yapmak istediğim şey aşağıdaki gibi ama doğru mu yazdım bilmiyorum bu şekilde çalışmıyor.

    if (lang == "en")
    include (TEMPLATEPATH . '/dosya1.php')

    elseif (lang == "de")
    include (TEMPLATEPATH . '/dosya2.php')
  • 06-09-2009, 19:07:33
    #2
    function DilSecimi()
    {
         return substr( $_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2 );
    }
            
        $dil = DilSecimi(); 
        // echo $dil ; derseniz gelen değerleri görebilirsiniz
        include (TEMPLATEPATH  . '/' . $dil . '.php') ;
    işinizi görür zannedersem
  • 06-09-2009, 19:08:00
    #3
    include'nin sonuna ; koysak ?
  • 06-09-2009, 19:38:57
    #4
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    function DilSecimi()
    {
         return substr( $_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2 );
    }
            
        $dil = DilSecimi(); 
        // echo $dil ; derseniz gelen değerleri görebilirsiniz
        include (TEMPLATEPATH  . '/' . $dil . '.php') ;
    işinizi görür zannedersem

    bu kodu nereye yerleştirmem gerekiyor?
  • 06-09-2009, 20:16:18
    #5
    buddy adlı üyeden alıntı: mesajı görüntüle
    bu kodu nereye yerleştirmem gerekiyor?
    http://rapidshare.com/files/276474874/dnm.rar.html

    basit bir örnek dosya oluşturdum.
    işinize yarar herhalde.
  • 06-09-2009, 23:31:14
    #6
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    http://rapidshare.com/files/276474874/dnm.rar.html

    basit bir örnek dosya oluşturdum.
    işinize yarar herhalde.

    Birader çok teşekkür ederim. tam istediğim gibi çalıştı.Yalnız ufak bir problem var.dil seçimi ile tr en dosyalarını sanırım tarayıcı diline göre çağırıyorsun. ben tr en dosya isimlerini değiştirmek istiyorum.nasıl değiştirebilirim?
  • 07-09-2009, 09:33:39
    #7
    buddy adlı üyeden alıntı: mesajı görüntüle
    Birader çok teşekkür ederim. tam istediğim gibi çalıştı.Yalnız ufak bir problem var.dil seçimi ile tr en dosyalarını sanırım tarayıcı diline göre çağırıyorsun. ben tr en dosya isimlerini değiştirmek istiyorum.nasıl değiştirebilirim?

    ana.php içeriği ;
         include  'fonksiyon.php';        
         include ( DilSecimi()  ) ;
        
        echo $dil['hosgeldin'] . 'uysal<br>';
        echo $dil['gule_gule'] . 'rockci<br>';
    fonksiyon.php içeriği;
    function DilSecimi()
    {
        $dil_array = array (
                                'tr'    =>    'turkish',
                                'en'    =>    'english'    
                                
                            );
     // turkish / english yazan yerler dil dosyalarının isimleridir
        $browser_dili = substr( $_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2 );
        
        $dil_dosyasi = 'diller/' . $dil_array[$browser_dili] . '.php' ;
        
        if (file_exists($dil_dosyasi)) return $dil_dosyasi ;
            else return 'diller/varsayilan_dil_dosyasi.php'; 
        // varsayilan dil dosyasi.  sisteminizde browser dili yoksa ,
      //ör : çince desteklemiyorsanız, ingilizce olarak ayarlayabilirsiniz.
    }
    turkish.php dil dosyalari içeriği;
    $dil['hosgeldin'] = 'Hosgeldiniz..';
    $dil['gule_gule'] = 'Gule gule efendim...';
    english.php
    <?php
    $dil['hosgeldin'] = 'welcome';
    $dil['gule_gule'] = 'good bye';
    ?>
    $dill_array dizisi içine istediğiniz kadar dil seçeneği ekleyebilirsiniz.

    kolay gelsin,
    iyi günler.
  • 08-09-2009, 17:34:54
    #8
    firefox türkçe ile denediğimde türkçe dosyasını çekebiliyorum ama opera tarayıcısı ingilizce olamsına rağmen türkçe sayfayı çekiyor.nerede yanlışlık var.verdiğin kodları aynen kullanıyorum.
  • 08-09-2009, 20:23:06
    #9
    sayfanın en başına ,
    echo $_SERVER['HTTP_ACCEPT_LANGUAGE'];
    ,
    ekle .
    opera nasıl bir karakter seti gönderiyorki,
    türkçe (tr) olarak gönderiyor demek ki o da.