2010-06-22 57 views
1

嗨,每一個首先im在zend新,我需要一些幫助開始。Zend與表格

我的問題是我有一個登錄像這樣

<form action="<?php echo $this->baseUrl ?>/user/login" method="post" id="login"> 
    <input type="text" name="username" value=""/> 
    <input type="password" name="password" value=""/> 
    <input type="submit" name="submit" value="submit" /> 
</form> 

和我的控制器是

代碼:選擇所有 公共職能在loginAction() {

 if($this->request->isPost()){ 

      $f = new Zend_Filter_StripTags(); 
      $user = $f->filter($this->_request->getPost('username')); 
      $pass1 = $f->filter($this->_request->getPost('password')); 

      try { 

       if(!empty ($user) && !empty ($pass1)){ 

        $this->_redirect('/user/system'); 
        $modelUser = new UserModel(); 
        $data = $modelUser->authUser($username, $pass1); 

       if($data->isValid()){ 
         $this->view->isvalid = "valido"; 
        } 
        $this->view->data = $data; 

        $this->_redirect('/user/system'); 

       }else { 
        return false; 
       } 



      } catch (Exception $exc) { 
       MainHelper::writeLog("Problem Login Action". $exc); 
      } 



     } 

和我型號

public function authUser($user , $pass) 
    { 
     $select = $this->select() 
       ->from($_name) 
       ->where('id_user = ?', $user) 
       ->where('pass = ?', $pass); 

     $row = $this->fetchRow($select); 

     //if($row>0) 
     return $row->toArray(); 

    } 

我的問題是,當我嘗試登錄,網站顯示我沒有代碼的空白頁面,最新錯誤?我知道控制器和模型。

+0

是你的login.phtml裏面的形式嗎?空白頁何時出現? – opHASnoNAME 2010-06-22 10:05:56

回答

1

如果你得到一個空白的白頁,可能會有一些致命的錯誤。您可以打開PHP的log_errors(將錯誤寫入日誌文件)或display_errors(向瀏覽器輸出錯誤),並確保error_reporting設置爲合理的值。

如果你遵循了典型的ZF QuickStart的東西,你可以確保你的應用程序使用的是「開發」環境,它通常設置爲正確顯示錯誤。如果沒有,你可以在發送之前破解index.php和相應的ini_set()和error_reporting()。

這應該可以幫助你找出眼前的問題。

而且,你爲什麼打電話$this->_redirect('/user/system');您嘗試$data = $modelUser->authUser($username, $pass1);

但是你的第一個任務是配置開發環境,這樣你就可以找出是什麼導致致命錯誤之前,目前尚不清楚。

0

isValid()用於驗證形式。

code $ this - > _ redirect('/ user/system');必須在匹配的用戶名和密碼組合後寫入。

檢查if(isset($ data ['id'])),然後重定向到你想要的位置。