2012-04-19 38 views
5

tôi đã tạo biểu mẫu đăng nhập trên hộp đèn bằng cách sử dụng hàm javascript. Bây giờ tôi muốn lưu trữ một giá trị vào biến session, vì vậy để kiểm tra xem người dùng đã logined, và không để cho anh ta đăng nhập hộp đèn một lần nữa và một lần nữa trên điều hướng của mình trên trang .. chức năng javascript của tôi là:lưu trữ giá trị trong biến phiên và kiểm tra giá trị

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

và im gọi hàm checksession trong các hình thức của tôi sự kiện onsubmit như

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

vấn đề là, trên tất cả các thiết lập lại hoặc trình hình thức, ngay cả trên trang thay đổi, biểu mẫu đăng nhập được hiển thị. Tại sao nó không kiểm tra chức năng kiểm tra phiên. Vui lòng cho tôi biết bất kỳ lỗi nào tôi đang thực hiện

+0

Bạn có biết rằng JavaScript và PHP là các ngôn ngữ khác nhau không? Mã của bạn là IT tương đương với Spanglish, nhưng Spanglish không cần phải chạy bằng máy tính. –

+1

có tôi đã biết, nhưng sau khi thực hiện các thay đổi, kết quả là như nhau, bây giờ xin vui lòng bạn sẽ tìm thấy một số lỗi khác. –

+2

Không có gì để sửa ở đây. Bạn chỉ cần gõ mã ngẫu nhiên với hy vọng rằng nó cuối cùng sẽ chạy. –

Trả lời

1

Tôi không chắc chắn về điều kiện của bạn. nhưng đoạn mã sau nên trình bày trong php script mà tạo ra hộp đèn của bạn:

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

(để kiểm tra trên được làm việc một cách chính xác, bạn có thể Xem mã nguồn của trang web của bạn và xem nếu có một dòng như: <script> var admin =1</script>)

sau nên trước khi bạn truy cập vào biến quản trị setted trên:

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

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

cũng lưu ý rằng if tuyên bố nên so sánh == không gán =

+1

Hộp đèn được tạo khi tải trang. Nó được đóng bởi một hàm javascript, Khi đóng nó, sau khi đăng nhập, tôi đã viết dòng mã của bạn là var admin = Nhưng có vẻ như, bây giờ chức năng kiểm tra (mẫu) không hoạt động chút nào. –

+0

tôi đã chỉnh sửa mã ở trên, như bạn đã nói tất cả. –

+0

ok. xin vui lòng kiểm tra giao diện điều khiển cho các lỗi java script? – Elen

Các vấn đề liên quan