statment header ('location:') kullanılarak çerez tabanlı ise ile yönlendirerek firefox garip hata veriyor

0 Cevap php

Ben örnek için http://localhost/site/test.php?lang=en_US bu gibi çerez ülke koduna göre benim ziyaretçi yönlendirmek çalışıyorum:

if (isset($_COOKIE['country'])) 
{
        $country = $_COOKIE['country'];
        header('Location: test.php?lang=en_US');  

        if ($country == "NO"){              
        header('Location: test.php?lang=no_NO');    
        }                       
}
else
{
    header('Location: test.php?lang=en_US');  
}

Ama ateş bu garip hatayı alıyorum: The page isn't redirecting properly

Bir çözüm buldu:

if (!isset($_GET['lang']))
{

        if (isset($_COOKIE['country'])) 
        {
                $country = $_COOKIE['country'];
                $redirect = "en_US";

                if ($country == "NO"){              
                $redirect = "no_NO";    
                header('Location: crime.php?lang='.$redirect); 
                }   

                if ($country == "EN"){              
                $redirect = "en_US";    
                header('Location: crime.php?lang='.$redirect); 
                }   

        }
        else
        {
            header('Location: crime.php?lang=en_US'); 
        }


}       

0 Cevap