我正在创建一个使用Codeigniter的网站,该网站提供在线小说/电子书。这部小说有多个章节,类似于硬拷贝。我计划按以下方式设计这个布局。
用户转到第1章,所以URL将是site.com/新颖/第1章/pageno
我计划创建一个新的控制器,它有第1章,第2章。等作为其功能。章节函数接收输入,并从数据库或文本文件中获取相同的表单。我还想存储用户进度,这可以在以后恢复。我计划使用章节/页面作为用户当前停止的地方的参考。
我想知道这种方法是否好,是否可以限制函数并使其更通用。这一概念的替代办法也将是有益的。
发布于 2013-07-10 10:16:29
是的,您可以使它更通用,您必须在配置目录下的routes.php中添加路由,如下所示
$route['novel/(chapter-[0-9]+)/(:any)'] = 'novel/chapter/$1/$2';
现在网址是:www.site.com/ now /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来保存用户进度。
https://stackoverflow.com/questions/17567277
复制相似问题