php中的语言变化

php中的语言变化,php,html,session,Php,Html,Session,我正在尝试更改所有页面的语言,但会话不起作用。会话将在两次单击后进行上一次值和语言更改,请解决此问题 $_SESSION['lanuage'] = $_POST['hindi_hidden']; if (!empty($_SESSION['lanuage'])){ if ($_SESSION['lanuage'] =='hi') { $_SESSION['lanuag

我正在尝试更改所有页面的语言,但会话不起作用。会话将在两次单击后进行上一次值和语言更改,请解决此问题

$_SESSION['lanuage'] = $_POST['hindi_hidden'];

        if (!empty($_SESSION['lanuage'])){ 
            if ($_SESSION['lanuage'] =='hi')
            {         
                      $_SESSION['lanuage'] = $_POST['hindi_hidden'];
            }
            else if ($_SESSION['lanuage'] =='en')
            {     
                    $_SESSION['lanuage'] = $_POST['hindi_hidden'];  
            }
            else {}
        }
        else
         {}
<input type="button" name="hi" id="hi" value="Hindi" onclick="get_hindi(this.id);" class="submit_sytle"/>
<input type="button" name="en" id="en" value="Eng" onclick="get_hindi(this.id);" class="submit_sytle"/>
$\u SESSION['lanuage']=$\u POST['hindi\u hidden';
如果(!empty($_SESSION['lanuage']){
如果($\会话['lanuage']=='hi')
{         
$_会话['lanuage']=$_POST['hindi_hidden'];
}
else if($\会话['lanuage']='en')
{     
$_会话['lanuage']=$_POST['hindi_hidden'];
}
else{}
}
其他的
{}

在您的评论之后编码:

你可以试试这个,它适合我:

<?php
session_start();
if (isset($_POST['hindi_hidden'])) {
    $_SESSION['lanuage'] = $_POST['hindi_hidden'];
}
if (isset($_SESSION['lanuage']) && ($_SESSION['lanuage'] =='hi' || $_SESSION['lanuage'] =='en')) {
    $_SESSION['lanuage'] = $_POST['hindi_hidden'];
}

echo $_SESSION['lanuage']; 
?>
<style>
.submit_sytle{
 text-transform:capitalize;
}
</style>
<form method="post">
<input type="submit" name="hindi_hidden" id="hi" value="hindi" onclick="get_hindi(this.id);" class="submit_sytle"/>
<input type="submit" name="hindi_hidden" id="en" value="english" onclick="get_hindi(this.id);" class="submit_sytle"/>
</form>
<script> 
function get_hindi(lang) {
    //alert (lang); 
    document.getElementById('hindi_hidden').value=lang; 
    document.form_login.submit(); 
} 
</script>

.提交{
文本转换:大写;
}
函数get_印地语(lang){
//警觉(朗);
document.getElementById('hindi_hidden')。value=lang;
document.form_login.submit();
} 
输出:

english
当我点击english时

印地语
当我点击印地语时

你能试试这个吗
 Can you try this
<?php
session_start();
if(isset($_POST['hindi_hidden'])){
    $_SESSION['lanuage'] = $_POST['hindi_hidden'];
} else {
    $_SESSION['lanuage']='hindi';
}
echo $_SESSION['lanuage']; 
?>
<style>
.submit_sytle{
 text-transform:capitalize;
}
</style>
<form method="post">
<input type="submit" name="hindi_hidden" id="hi" value="hindi" onclick="get_hindi(this.id);" class="submit_sytle"/>
<input type="submit" name="hindi_hidden" id="en" value="english" onclick="get_hindi(this.id);" class="submit_sytle"/>
</form>
.提交{ 文本转换:大写; }
您是否使用了
session_start()在开头?您的姓名中也有拼写错误:
lanuage
submit\u sytle
…您的输入字段名为
hi
en
not
hindi\u hidden
。如果在会话中出现“hi”,并且我转到另一个页面,它在hindi中不会改变,请尝试:if(isset($\u POST['hindi\u hidden']){session lanuage']=$\U POST['lanuage']}else if(isset($\U SESSION['lanuage']){$\U SESSION['lanuage']=$\U SESSION['lanuage'];}else{$\U SESSION['lanuage']='hindi';}函数get hindi(lang){//alert(lang);document.getElementById('hindi\U hidden')。value=lang;document form login.submit