在 php 中更改语言并获取 ID 问题

Changing Language in the php and getting id problem

我的问题是当我进入类别或 posts 时,它的特定 ID 是这样的 "category.php?category=1 or post.php?p_id=3",当我在这个页面上时我更改了网站语言,URL 更改为 category.php?lang=en 或 post.php?lang=lt,因此,我看不到 post。

我能做些什么来防止这种情况发生?

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>

你必须在获取请求之前安排你的 url 或者你可以使用 post 所以它不会给你带来问题。