将值存储在会话变量中并进行检查

时间:2012-04-19 14:18:10

标签: php javascript

我使用javascript函数在灯箱上创建了一个登录表单。现在我想在会话变量上存储一个值,以便检查用户是否已登录,而不是在页面上的导航中反复显示登录灯箱..我的javascript函数是:

<script language="javascript" type="text/javascript">  
    function createlightbox()  
    {  
        document.getElementById('light').style.display='block';  
        document.getElementById('fade').style.display='block'  
    }  
    function closelightbox()  
    {  
        document.getElementById('light').style.display='none';  
        document.getElementById('fade').style.display='none'  
    } 
     function checksession()  
    {  if (admin=="admin")
    {closelightbox();}
    else
    {createlightbox();}  
    } 

function check(form)/*function to check userid & password*/
{
 /*the following code checkes whether the entered userid and password are matching*/
 if(form.name.value == "admin" && form.password.value == "admin")
  {
    closelightbox();
     var admin = <?php $_SESSION['Admin']= 1; ?>

  }
 else
 {
  document.getElementById("error").style.display='block';/*displays error message*/
  }
}      
</script>  

我在我的表单中调用checksession函数onsubmit event as

<form id="Admin" onreset="checksession()">

问题是,每次重置或提交表单时,即使页面更改,也会显示登录表单。为什么不检查检查会话功能。 请告诉我我做的任何错误

1 个答案:

答案 0 :(得分:1)

我不确定你的条件在哪里。 但是以下代码应该出现在生成灯箱的php脚本中:

<?php echo '<script> var admin ='.$_SESSION['Admin'].'</script>'; ?>

(为了检查上面是否正常,您可以查看您网页的源代码,看看是否有类似的行:<script> var admin =1</script>

以下内容应在您访问上面设置的管理变量之前:

<script language="javascript" type="text/javascript">  
.... //other code

 function checksession()  
    {  if(admin =="admin")
    {closelightbox();}
    else
    {createlightbox();}  
    } 
....

还要注意if语句应该比较==而不是=