Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 网站模板/设计建议-后端_Php_Database_Algorithm_Codeigniter_Design Patterns - Fatal编程技术网

Php 网站模板/设计建议-后端

Php 网站模板/设计建议-后端,php,database,algorithm,codeigniter,design-patterns,Php,Database,Algorithm,Codeigniter,Design Patterns,我正在使用Codeigniter创建一个网站,该网站承载在线小说/电子书。这部小说有多个章节,类似于硬拷贝。我计划设计布局如下 用户转到第1章,所以URL应该是site.com/novel/chapter1/pageno 我计划创建一个具有第1、2章的新型控制器。。等作为其功能。chapter函数接收输入并从数据库或文本文件获取相同的表单。我还想存储用户进度,稍后可以恢复。我计划使用章节/页码作为用户当前停止位置的参考 我想知道这种方法是否好,是否有可能限制函数并使其更通用。这个概念的替代方法也

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

用户转到第1章,所以URL应该是site.com/novel/chapter1/pageno

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


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

是的,您可以使它更通用,您必须在routes.php的config目录下添加route,如下所示

$route['novel/(chapter-[0-9]+)/(:any)'] = 'novel/chapter/$1/$2';
现在url将是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来保存用户进度,只需单击相同的书签链接或在每个页面加载它

我不会在URL中同时包含章节和页码,因为你只需要页码来获取章节(?)。对,但由于它是作为参数发送的,它将显示在URL中,对吗?会的,但可能会让读者感到困惑。我会在pageno的帮助下,将章节载入网页并显示在那里。谢谢。这帮了大忙。!!