2016-06-11 52 views
1

我對zend框架非常陌生,並且將在我的小應用程序中添加會話,但是我不知道如何將會話變量打印到我的header.phtml頁面。如何在zend框架中的查看頁面上打印會話

UsersTable.php

public function fetchbyWhere($where) { 
     $rowset = $this->tableGateway->select($where); 
     $row = $rowset->current(); 
     if (!$row) { 
      return; 
     } 
     return $row; 
    } 

IndexController.php

<?php 

namespace Application\Controller; 

use Zend\Mvc\Controller\AbstractActionController; 
use Zend\View\Model\ViewModel; 
use Application\Model\Users;   // <-- Add this import 
use Zend\Session\Container; // We need this when using sessions 

class IndexController extends AbstractActionController { 

    protected $usersTable; 

    public function getUsersTable() { 
     if (!$this->usersTable) { 
      $sm = $this->getServiceLocator(); 
      $this->usersTable = $sm->get('Application\Model\UsersTable'); 
     } 
     return $this->usersTable; 
    } 

    public function indexAction() { 
     $request = $this->getRequest(); 
     if ($request->isPost()) { 
      $user = $request->getPost('txtuser'); 
      $pass = $request->getPost('txtpassword'); 

      $wher = array('username' => $user, 'password' => $pass); 
      $resultSet = $this->getUsersTable()->fetchbyWhere($wher); 

      //var_dump($resultSet); 

      if($resultSet) 
      { 
       $user_session = new Container('user'); 
       $user_session->ses_user = $resultSet->username; 
       return new ViewModel(array(
        'msg' => 'valid user', 
        'sesuser' => $user_session->ses_user, 
       )); 
      } 
      else { 
       return new ViewModel(array(
        'msg' => 'not a valid user', 
       )); 
      } 

     } else { 
      return new ViewModel(); 
     } 
    } 

} 

現在我不知道如何header.phtml頁打印此會議。

回答

2

您還需要在頭文件中添加會話容器。

在頭文件中添加以下行。

<?php 
     use Zend\Session\Container; // We need this when using sessions 
     $user_session = new Container('user'); 
     if(isset($user_session->ses_user)) 
     echo "user:".$user_session->ses_user; 
    ?> 
+0

謝謝你,我只是在找這個 –