语言选择在本地工作但不在服务器

时间:2016-07-25 16:19:57

标签: php laravel controller multilingual

我正在建立一个以2种语言开头的多语种网站 - 葡萄牙语和英语 - 一切都可以在我的本地服务器上运行,但不能在实际的服务器上运行。

在网站上我有2个按钮,每个语言一个,看起来像这样: enter image description here

按钮的代码如下:

<form action="{{ URL::route('language-chooser')  }}" method="post">
    <input id="locale_pt" type="submit" name="locale" class="<?php echo Lang::locale() == 'PT' ? 'active' : ''  ?>" value="PT"/>
    <span>|</span>
    <input id="locale_en" type="submit" name="locale" class="<?php echo Lang::locale() == 'EN' ? 'active' : ''  ?>" value="EN"/>
</form>

然后我有一个看起来像这样的控制器:

class LanguageController extends BaseController {
    public function chooser() {

        Session::set('locale', Input::get('locale'));
        return Redirect::back();

    }
}

最后一条看似如下的路线:

Route::post('/language', array(
    'before' => 'csrf',
    'as' => 'language-chooser',
    'uses' => 'LanguageController@chooser'
));

现在我的问题是,正如标题所说,一切都在我的本地服务器上运行得很好但是当我将它上传到实际的在线服务器时按钮停止工作。我点击它们,页面重新加载,或者看起来似乎,但网站的语言不会改变。它没有任何错误或任何东西来帮助我诊断问题,我不知道还能做什么。

有人能指出我正确的方向吗?

谢谢。

编辑:--------------------------------------------- ---

服务器正在使用PHP 5.4。

我刚刚做了

if (isset($_COOKIE["PHPSESSID"])) {
echo "active";
} else {
echo "don't see one";
}

它回应&#34;活跃&#34;所以我想会议正在进行中。对?

如果我<?php echo Lang::locale() ?>我得到了我点击的最后一个按钮的值,但语言仍然没有改变。

编辑:--------------------------------------------- -

问题解决了。这是一个区分大小写的情况。感谢所有试图提供帮助的人。

0 个答案:

没有答案