2012-04-19 16 views
5

he hecho un formulario de inicio de sesión en una caja de luz usando una función de javascript. Ahora quiero para almacenar un valor de variable de sesión, por lo que para comprobar si el usuario ha logined, y no mostrar su sesión caja de luz una y otra vez en sus navegaciones en la página .. Mi función javascript es:almacenar valor en la variable de sesión y marcarlo

<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> 

y estoy llamando a la función checksession en mis formas de eventos onsubmit como

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

el problema es, en cada restablecer o presentados de la forma, incluso en los cambios de la página, se muestra el formulario de acceso. Por qué no está controlando la función de verificación de sesión. Por favor, dime cualquier falla Estoy haciendo

+0

¿Sabía que JavaScript y PHP son idiomas diferentes? Su código es el equivalente en TI de Spanglish, pero Spanglish no necesita ser ejecutado por una computadora. –

+1

sí lo sé, pero después de hacer los cambios, los resultados son los mismos, ahora por favor, podría encontrar otras fallas. –

+2

No hay nada que arreglar aquí. Simplemente estás escribiendo código aleatorio con la esperanza de que eventualmente se ejecute. –

Respuesta

1

No estoy seguro de dónde están sus condiciones. pero el siguiente código debe presentar en el script PHP que genera su caja de luz:

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

(para comprobar anterior está funcionando correctamente, se puede ver el código fuente de la página y ver si hay una línea como: <script> var admin =1</script>)

la siguiente debe ser antes de acceder a la variable de administración setted arriba:

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

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

también en cuenta que if declaración debe comparar == no asigna =

+1

La caja de luz se genera cuando se carga la página. Está cerrado por una función de JavaScript. Al cerrarlo, después de iniciar sesión, escribí tu línea de código como var admin = Pero parece que ahora la función de verificación (formulario) no funciona en absoluto. –

+0

He editado el código anterior, como dijiste todo. –

+0

bien. por favor revise la consola para ver si hay errores en el script java – Elen

Cuestiones relacionadas