Моя проблема возникает, когда я получаю в категориях или сообщениях с указанием их c идентификаторов, таких как "категория. php? Category = 1 или сообщение. php? P_id = 3", и я меняю язык сайта когда я на этой странице, URL меняется на категорию. php? lang = en или post. php? lang = lt и из-за этого я не вижу сообщение.
Что я могу сделать, чтобы предотвратить это?
if(isset($_GET['lang']) && !empty($_GET['lang'])){
$_SESSION['lang'] = $_GET['lang'];
if(isset($_SESSION['lang']) && $_SESSION['lang'] != $_GET['lang']){
echo "<script type='text/javascript'> location.reload(); </script>";
}
}
if(isset($_SESSION['lang'])){
include "includes/languages/".$_SESSION['lang'].".php";
} else {
include "includes/languages/en.php";
} ?>
<form method="get" action="" id="language_form">
<div class="input-group">
<select name="lang" class="input-control" onchange="changeLanguage()" >
<option value="en" <?php if(isset($_SESSION['lang']) && $_SESSION['lang'] == 'en'){ echo "selected"; } ?>>EN</option>
<option value="lt" <?php if(isset($_SESSION['lang']) && $_SESSION['lang'] == 'lt'){ echo "selected"; } ?>>LT</option>
</select>
</div>
</form>