【问题标题】:Codeigniter pagination and .htaccessCodeigniter 分页和 .htaccess
【发布时间】:2014-09-25 03:45:52
【问题描述】:

我在控制器中有这个:

function index(){


    $this->show();

}

function show($start=0){
    $start = $this->uri->segment(3);

    if(trim($start)==''){
        $start = 0;
    }

    $this->load->model('post');
    $data['posts'] = $this->post->get_posts(4,$start);

    $this->load->library('pagination');
    $config['base_url']=base_url().'posts/show/';
    $config['total_rows']=$this->post->get_posts_count();
    $config['per_page'] = 4;
    $config['full_tag_open'] = '<ul class="tsc_pagination tsc_paginationA tsc_paginationA01">';
    $config['full_tag_close'] = '</ul>';
    $config['prev_link'] = '&lt;';
    $config['prev_tag_open'] = '<li>';
    $config['prev_tag_close'] = '</li>';
    $config['next_link'] = '&gt;';
    $config['next_tag_open'] = '<li>';
    $config['next_tag_close'] = '</li>';
    $config['cur_tag_open'] = '<li class="current"><a href="#">';
    $config['cur_tag_close'] = '</a></li>';
    $config['num_tag_open'] = '<li>';
    $config['num_tag_close'] = '</li>';

    $config['first_tag_open'] = '<li>';
    $config['first_tag_close'] = '</li>';
    $config['last_tag_open'] = '<li>';
    $config['last_tag_close'] = '</li>';

    $config['first_link'] = '&lt;&lt;';
    $config['last_link'] = '&gt;&gt;';


    $this->pagination->initialize($config);

    $data['pages']=$this->pagination->create_links();


    $this->load->model('about_me');
    $data['about_me'] = $this->about_me->get_about_me();

    $this->load->model('sponsors');
    $data['sponsors'] = $this->sponsors->get_sponsors();


    $this->load->view('post_index',$data);
}

htaccess 中的这个:

RewriteEngine on 
RewriteCond $1 !^(index\.php|css|uploads|assets|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

不知何故,当我单击分页链接时,图像已损坏。我认为问题出在 .htaccess 文件中,但我无法弄清楚。请帮忙。

【问题讨论】:

  • 您是通过相对 url 加载图片吗?
  • 当 url 为:localhost/cms,uploads/image;?> 这工作正常。但是当点击分页链接时出现问题,并且没有图像显示...这是 base_url: $config['base_url'] = 'localhost/cms';

标签: php .htaccess codeigniter mod-rewrite pagination


【解决方案1】:

如果您的图像路径的实际代码是这样的:

<?php base_url();?>uploads/<?php echo $posts[$i]->image;?>

那么这就是你的问题所在。 &lt;php base_url()?&gt; 不回显任何内容;你的实际路径是uploads/&lt;?php echo $posts[$i]-&gt;image;?&gt;

只要把开头改成&lt;php echo base_url()?&gt;就可以了。

(如果您还没有它,您可能需要将http:// 添加到您的基本网址的开头。否则,它仍然看起来像一个相对链接。)

【讨论】:

  • 就是这样!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-16
  • 2019-08-07
  • 1970-01-01
  • 1970-01-01
  • 2011-03-18
  • 2020-12-08
相关资源
最近更新 更多