我正在尝试将会话更改为" en"或"不"点击链接,以便在网站上显示正确的语言。
我有2个变量,$langNO
和$langEN
。这些变量包含每种语言的键和值。
我正在使用它:
if (!isset($_SESSION['lang'])) {$_SESSION['lang'] = "en";}
if ($_SESSION['lang'] === "no") {$lang = $langNO;}
if ($_SESSION['lang'] === "en") {$lang = $langEN;}
$lang
与文本中的字符串相关。
示例:
<h1><?php echo $lang['heading']; ?></h1>
要更改会话值,我在 changelang.php 中使用它:
session_start();
$_SESSION['lang'] = $_GET['lang'];
header("Location:index.php");
当我点击<a href="changelang.php?lang=no">NO</a>
更改语言时,它只会保留默认语言。
我希望得到一些关于如何解决这个问题的反馈。
谢谢!
答案 0 :(得分:0)
我刚刚更改了索引代码
<强>的index.php 强>
<?php
session_start();
if (!isset($_SESSION['lang'])) {
$lang = "en";
} else {
$lang = $_SESSION['lang'];
}
switch ($_SESSION['lang']) {
case "en":
$lang = $langEN;
break;
case "no":
$lang = $langNO;
break;
}
?>
<a href="changelang.php?lang=no">NO</a>
<强> changelang.php 强>
<?php
session_start();
$_SESSION['lang'] = $_GET['lang'];
header("Location:index.php");
?>
答案 1 :(得分:0)
changelang.php
在函数
中设置标题()function redirect(url) {
header('Location: '. url);
}
session_start()
$_SESSION['lang'] = $_GET['lang'];
redirect('index.php');