2010-07-29 44 views
0

下面的代碼是我使用的PHP/MySQL登錄系統的一部分。它確定是否顯示登錄字段,並且應該只在用戶未登錄時顯示它們。有時在用戶登錄時將其顯示,並將用戶登出。其他語句的登錄功能並不總是正常工作

任何想法,我應該尋找麻煩拍這個?

由於提前,

約翰

<?php 
if (!isLoggedIn()) 
{ 

    if (isset($_POST['cmdlogin'])) 
    { 

     if (checkLogin($_POST['username'], $_POST['password'])) 
     { 
      show_userbox(); 

     } else 
     { 
      echo "Incorrect Login information !"; 
      show_loginform(); 
     } 
    } else 
    { 

     show_loginform(); 
    } 

} else 
{ 

    show_userbox(); 

} 

?> 

回答

0

您可以試試:

<?php 
if (!isLoggedIn()) 
{ 

    if (isset($_POST['cmdlogin'])) 
    { 

     if (checkLogin($_POST['username'], $_POST['password'])) 
     { 
      show_userbox(); 

     } else 
     { 
      echo "Incorrect Login information !"; 
      show_loginform(); 
     } 
    } else 
    { 

     show_loginform(); 
    } 
    exit(); 

} else 
{ 

    show_userbox(); 

} 

?> 
0

你想要做的是重新評估的函數的返回值。確保他們總是返回一個布爾值。

我看不到其他功能的來源,所以也許這是一個好主意,看看從isLoggedIn()和CheckLogin代碼;)

問候,斯蒂芬