0

私は自分のアプリで zend paginator を使用しましたが、その方法で正常に動作していますが、リンクをクリックすると、正しい情報を照会するページネーションを意味しますが、css はそこに適用されません。 CSS が適用されていないページを更新した後、任意のページネーションをクリックします。

これはページネーションを行うアクションです

 public function controlpannelAction(){
      $data = Zend_Auth::getInstance()->getStorage()->read();  
      $user_id = $data->user_id;
      $registry = Zend_Registry::getInstance();  
      $DB = $registry['DB'];
      $sql = "SELECT * FROM `phone_service` WHERE user_id='".$user_id."'";
      $result = $DB->fetchAll($sql);
      $page=$this->_getParam('page',1);
      $paginator = Zend_Paginator::factory($result);
      $paginator->setItemCountPerPage(5);
      $paginator->setCurrentPageNumber($page);
      $this->view->paginator=$paginator;
   }

これは私のビュー名 controlpannel.phtml です

<?php
include("header.phtml");
include("blue.phtml");
include("main1.phtml");
include("footer.phtml");
?>

すべての css は header.phtml.all にあります。すべての css は header.phtml にあるため、ここに header.phtml があります。

  <link rel="stylesheet" href="../../../web_root/assets/scripts/jqueryui/jqueryui.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="../../../web_root/assets/styles/style.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="../../../web_root/assets/styles/global.css" type="text/css" media="screen" />
    <link rel="stylesheet" href="../../../web_root/assets/styles/config.css" type="text/css" media="screen" />
   .
   .
   .
   .
   and all other elements(body,divs)

これが私のアプリの構造です。パスを意味します

    appname
    ->application
      -controllers
      -model
      -views
      -layouts
    ->library
      -zend
     ->web_root
       -index.php
       -assets
       -style
       -etc

そして、これがweb_root内の私のindex.phpですおそらくここに問題があります

 <?php
 error_reporting(E_ALL|E_STRICT);
ini_set('display_errors', true);
$rootDir = dirname(dirname(__FILE__));
set_include_path($rootDir . '/library' . PATH_SEPARATOR . get_include_path());
require_once 'Zend/Controller/Front.php';
require_once 'Zend/Registry.php';
require_once 'Zend/Paginator.php';
include_once 'Zend/Db/Adapter/Pdo/Mysql.php';
require_once 'Zend/View.php';
require_once 'Zend/Controller/Action/Helper/ViewRenderer.php';
$params = array('host'         => 'localhost',
            'username'  => 'root',
            'password'    => '',
            'dbname'        => 'xyz'
           );

      $DB      = new Zend_Db_Adapter_Pdo_Mysql($params);
      $DB->setFetchMode(Zend_Db::FETCH_OBJ);
      Zend_Registry::set('DB',$DB);

 $view = new Zend_View();
 $viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer();
 $viewRenderer->setView($view);
 Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
 Zend_Controller_Front::run('../application/controllers');
  ?>

私は問題を理解するためにこれは非常に明確だと思います??何か助けてください

4

1 に答える 1

5

cssを含める方法は良くありません。URLが動的に変化し、相対パスが期待どおりに機能しないため、問題があると思います。代わりにこれを使用する必要があります。

<link rel="stylesheet" href="<?php echo $this->baseUrl('/assets/scripts/jqueryui/jqueryui.css'); ?> ...
于 2012-01-25T15:38:11.313 に答える