2012-01-27 9 views
0

в модуле, который мы хотим отобразить в качестве демонстрации, я хотел показать, что логин может выглядеть как , поэтому нет необходимости в мерах безопасности.JSession дает мне пустую страницу

моя проблема заключается в следующем: при вводе этого кода страница не заполняется. кадр не загружается и выглядит как joomla, я не загружаю страницу. (нет html)

Это мой первый раз, играя с JSession.

defined('_JEXEC') or die('Direct Access to this location is not allowed.'); 
define("SHAKERCLASS"," jhShake_module"); 
jimport('joomla.application.module.helper'); 

$document = &JFactory::getDocument(); 
$db   = &JFactory::getDBO(); 
$session = JFactory::getSession(); 
$loginInfos = array(); 
if(!empty($session->get('login'))){ 
    $loginInfos = $session->get('login'); 
}else{ 
    $loginInfos = array("status" => "login", "username" => "", "password" => ""); 

    $session->set('login', $loginInfos); 
} 

$menuLogin = "<div id='connexion'> 
       <form name='input' action='$urlHere' method='POST'> 
        Username : <input type='text' name='usrn_Diffusion' /> 
        Password : <input type='password' name='pass_Diffusion' /> 
        <input type='submit' value='Submit' /> 
       </form> 
       </div>"; 


#DEMO LINE 
$passwordOnOff = true; 
if($passwordOnOff){ 

    if(!empty(JRequest::getVar('pass_Diffusion')) && !empty(JRequest::getVar('usrn_Diffusion'))){ 
      $loginInfos["status"]   = "logged"; 
      $loginInfos["password"]  = JRequest::getVar('pass_Diffusion'); 
      $loginInfos["username"]  = JRequest::getVar('usrn_Diffusion'); 

      $loginInfos = $session->set($loginInfos); 
    } 
    if($loginInfos["status"] == "logged"){ 
     if($password == $loginInfos["password"] && $username == $loginInfos["username"]){ 

     }else{ 
      $loginInfos["status"]   = "loginError"; 
      $loginInfos["password"]  = ""; 
      $loginInfos["username"]  = ""; 

      $loginInfos = $session->set($loginInfos); 
     } 
    }else{ 
     $output = $menuLogin; 
     exit(); 
    } 

} 

EDIT:

Линия ошибка, кажется, это одна:

if(!empty($session->get('login'))){ 

ответ

1

Похоже, вы не можете использовать "пустой" на $ session-> Get ('логин')

вот правильный способ сделать это:

if($session->get('login', false)){ 
Смежные вопросы