0

私のプロジェクトには 2 つのコントローラーがあります。2 番目のコントローラーが正しく表示されません。ブラウザ行で開いた場合は問題ありませんが、ビューのリンクで渡すと問題があります。2 番目のコントローラーは 1 番目に似ています。

コントローラー

<?php
if ( ! defined('BASEPATH')) exit ('No direct script access allowed');

class Article extends CI_Controller
{
   public function __construct()
   {
    parent::__construct();
   }

   public function index()
   {
    ini_set('display_errors',1);
error_reporting(E_ALL);

    $this->load->view('header_view');
    $this->load->view('menu_view');
    $this->load->view('categories_view');
           $this->load->model('mat_model');
           $data = array();
           $data['news'] = $this->mat_model->get_latest();
           $data['latest'] = $this->mat_model->get_latest();
        $this->load->view('useful_sites_view',$data);
        $this->load->view('article_view',$data);
        $this->load->view('footer_view');

   }
}

?>

リンクがあるビュー:

 <?php foreach ($news as $one):?>
 <div id="right">
 <div id="breadcrumb"><a href="">Home</a> &raquo; <a href="">Somewhere</a></div>



      <h1><?=$one['title']?></h1>

      <p>
      <div id="small_img"><?=$one['small_img']?></div>
      <?=$one['description']?>
      </p>
      <div id="">  <a href="<?=base_url()."article/index/".$one['material_id'];?>" class="postinfo2">Читать далее...</a></div>
      <span class="postinfo"> Posted by <a href=""><?=$one['author']?></a> on  
      <?=$one['date']?></span>
      <HR ALIGN="center" WIDTH="70%" SIZE="1px" COLOR="black">

  </div>
  <?php endforeach; ?>

私はサイト上の画像を閲覧することについてあまり評判がありませんが、私はそれをとても必要としています.それ以外のリソースを使用して申し訳ありませんブラウザの行:

リンク付き:

http://s020.radikal.ru/i710/1301/fd/76f313259454.jpg

ブラウザ行で:

http://s020.radikal.ru/i713/1301/4e/a863cd18184d.jpg

ありがとう。

4

1 に答える 1

0

上のコメントへのお返事ですが…

<link rel="stylesheet" href="<?= base_url() ?>css/style.css">

絶対パスです。

あなたbase_url()'http://www.example.com/'そうであるとしましょう上記の行はあなたのcssに次のようにリンクします:

<link rel="stylesheet" href="http://www.example.com/css/style.css">

そのため、どのページを表示していても、CSS は常にその css ファイルにリンクされます。

一方、次のような相対パスを使用していた場合:

<link rel="stylesheet" href="/css/style.css">

サイトのルートでは、css パスは正しいでしょう。しかし、たとえば、他のページでは

http://www.example.com/somepage/testurl

CSS は次のようにリンクされます。

<link rel="stylesheet" href="http://www.example.com/somepage/testurl/css/style.css">

これは明らかに間違っています。

HTMLの相対パスと絶対パスをGoogleで検索してみてください。これにより、物事がより明確になります。

于 2013-01-10T22:16:21.093 に答える