0

我正在使用托管在线小说/电子书的Codeigniter创建一个网站。小说有多个章节,类似于硬拷贝。我计划设计如下布局。

用户转到第 1 章,因此 URL 为 site.com/novel/chapter1/pageno

我计划创建一个具有第 1 章、第 2 章等功能的新型控制器。chapter 函数接收输入并从数据库或文本文件中获取相同的形式。我还想存储可以稍后恢复的用户进度。我计划使用章节/页面作为用户当前停止位置的参考。

我想知道这种方法是否很好,是否可以限制功能并使其更通用。这个概念的替代方法也会有所帮助。

4

1 回答 1

1

是的,您可以使它更通用,它的路由必须像这样在 config 目录下的 routes.php 中添加路由

$route['novel/(chapter-[0-9]+)/(:any)'] = 'novel/chapter/$1/$2';

现在网址将是 www.site.com/novel/chaper-20/60

新颖的控制器

class Novel extends CI_Controller{


  function chapter($chaper_no,$page_no){

     echo $chpter_no,'  ',$page_no;
  }
 // if you don't want to pass variables to chapter function use the following

  function chapter(){
        $chapter_no = $this->uri->segment(2);
        $page_no = $this->uri->segment(3);
  }

}

如果您在您的网站上注册用户,请创建一个书签链接,要求他保存页面,如果您没有在您的网站上注册用户,您可以设置 cookie 以通过单击相同的书签链接或在每个页面加载时保存用户进度

于 2013-07-10T10:16:29.970 回答