• 18-11-2018, 14:07:18
    #1
    Merhaba arkadaşlar,

    Çok dilli bir firma scripti yazdım arkadaşlar fakat hangi dil olduğunu belirlemesi için cookies sistemini kullandım fakat masaüstünde bir sıkıntı yokken, telefonda giridiğimde çalışmıyor hata alıyorum. Yardımlarınız için teşekkür ederim


    NOT: Yeni bir bilgisayarda siteye giriş yapınca cookies çalışmadığı için dil devreye girmiyor. Sebebi ne olabilir arkadaşlar kodları aşağıda paylaştm

    Hata Kodu:
    17-Nov-2018 16:26:25 Europe/Istanbul] PHP Warning: include(lang/1.php): failed to open stream: No such file or directory in /home/public_html/inc.lang.php on line 5

    Hata Resmi:




    inc.lang.php

    require_once("include/fonksiyon.php");
    
    if (isset($_COOKIE[$cookie_adi]) && !empty($_COOKIE[$cookie_adi])) {
    	$lang = $_COOKIE[$cookie_adi];
    	include("lang/".$_COOKIE[$cookie_adi].".php");
    
    }else{ // default
    	setcookie($cookie_adi, $varsayilan_dil["dil_kod"], time()+ (60*60*24*30));
    	$lang = $varsayilan_dil["dil_kod"];
    	include("lang/".$varsayilan_dil["dil_kod"].".php");
    }
    
    $secilen_dil_q = $db->query("select * from dil where dil_kod = '".$lang."'")->fetch(PDO::FETCH_ASSOC);
    $secili_dil = $secilen_dil_q;

    lang.php

    if (isset($_GET['l'])) {
    	$lang = EscapeData($_GET["l"]);
    	$return = urldecode(EscapeData($_GET["return"]));
    
    	unset($_COOKIE[$cookie_adi]); 
    	setcookie($cookie_adi, $lang, time()+ (60*60*24*30));
    
    	if ($varsayilanDil == $lang) {
    		header("Location: index.php");
    	}else{
    		header("Location: index.php");
    
    	}
    
    }else{
    	// set default lang
    	setcookie($cookie_adi, "tr", time()+ (60*60*24*30)); 
    	header("Location: index.php");
    }
    
    exit;
  • 19-11-2018, 17:12:38
    #2
    Arkadaslar bir fikri olan yok mu acaba.
  • 22-11-2018, 15:22:37
    #3
    Merhaba,

    Belirttiğiniz hatada dil dosyasını belirttiğiniz dizinde bulamadığını söylüyor, benim anladığım kadarıyla mobil linkiniz farklı (yani site.com/m yada m.site.com gibi). Bundan kaynaklı olarak include ederken bulundğu dizinde dil dosyasını arıyor, çözüm olarak mobildeyken ../ ekleyebilirsiniz yada tüm include işlemlerinde ana dizinden başlarsınız. Buda yaşadığınız sorunu çözer.

    Yaşadığınız sıkıntı mobildeyken çerez okuyamaması değil, çerezi okuyor ama sonuçta dönen dil dosyayısını iclude edemiyor.

    İyi çalışmalar.
  • 26-01-2019, 09:35:09
    #4
    Herkese teşekkür ediyorum sorunu çözdüm