很多人,我在更改语言时遇到问题。 我已经阅读了很多问题和答案,但它们对我不起作用。我试图解决这个问题,但我做不到。
我是学生,今年我开始编码。我和Twig一起工作,这让我更加困惑。
这是我用于检测语言的php文件
<?php
if(isset($_GET['lng'])){
$lng = $_GET['lng'];
if($lng !== '' && ($lng === 'fr' || $lng === 'en'))
$_SESSION['langue'] = $lng;
}
if(isset($_SESSION['langue'])) $userLang = $_SESSION['langue'];
else $userLang = 'en';
?>
在我写的index.php中
$page = "index";
if( isset ($_GET['page']) ) $page = $_GET['page'];
$pagePHP = "home";
switch( $page )
{
case "whatwedo" : $pagePHP = "whatwedo"; $current = "whatwedo"; break;
default : $pagePHP = "home"; $current = "home"; break;
}
$view->setVar('currentPage', $page);
include "pages/$pagePHP.php";
这是我的layout.html.twig
<div id="menulangue">
<a href="index.php?lng=fr" title="Français"><div class="btnlanguess">Français</div></a>
<a href="index.php?lng=en" title="English"><div class="btnlangue">English</div></a>
</div>
我尝试以多种方式更改href的链接。我记得最后两个:
但它不起作用。我的索引url是index.php?lng = en和另一个页面(无论是英文还是法文)是index.php?page = whatwedo。 在上述情况下,单击语言更改时,不仅会返回索引页面,而且索引页面的URL将如下所示
案例1. index.php?page = equipe?lng = fr,在这种情况下,如果选择另一个页面,它会默认继续使用该语言。
案例2. whatwedo?lng = fr且未找到页面:未找到
在此服务器上找不到请求的URL / APL / whatwedo。
答案 0 :(得分:2)
将此作为社区维基回答发布,看到它已在评论中解决。
我:
“index.php?page = equipe?lng = fr - 第二个参数应该使用&amp;而不是?”
OP:
“哇,非常感谢,弗雷德!你是一个天才 - 我在第一种情况下改变了吗?带有&amp;它完美无缺!非常感谢!”