如何在codeigniter

时间:2017-12-27 05:37:12

标签: php codeigniter

我需要帮助来完成一个包含一些现有html页面的网页。我需要使用许多现有的html页面动态加载我的新网页。并且现有的是具有每个自己的资产文件夹的html格式。因此,我使用CodeIgniter框架作为我的新主网页。

我的Web文件夹结构如下:

Project
|
|-->application
    |        
    |-->controllers
    |-->views
        |
        |-->main.php [Main index file]
        |-->Module01 [sub content (Dynamic) directory of main.php]
            |
            |-->ContentA [Section 1 of Module01]
                |
                |-->story_html5.html [I want to be sub content of main.php]
                |-->mobile [assets of story_html5.html]
                |-->story_content [resources of story_html5.html]
            |
            |-->ContentB [Section 2 of Module01]
                |

Web Structure Folder 1

Web Structure Folder 2

我的主页面(模板)在main.php目录中为view。我希望动态地将文件story_html5.html作为嵌入内容放在main.php中。因此,当用户单击主页面上的任何链接时,内容页面可以动态地改变。它可以切换到另一个模块或ContentB目录中的另一个story_html5.html。 并且story_html5.html已经在其名称为mobilestory_content目录的同一位置目录(子目录)上具有resorces和assets。它包含一些js,css和flash文件。

问题是,我是否可以加载动态内容(及其resorces),它们还驻留在CodeIgniter的view目录中?或者有更好的方法来实现这一目标吗? 我可以使用像这样的对象元素在没有php / framework的情况下做到这一点:

<object type="text/html" data="Module01/ContentA/story_html5.html"></object>

但是我需要一些安全性和一些url参数规则,所以我使用php框架。

**我已经从左侧菜单的控制器执行动态页面,如此页面所示:load view within div tag using codeigniter

======编辑======

我从我的控制器抛出了这个变量:

$data['content'] = $this->load->view('Module01/ContentA/story_html5.html');

但问题是,页面内容(story_html5.html)没有加载其内容资源(js,css和flash文件)。

此致

1 个答案:

答案 0 :(得分:1)

我终于能够通过简单地移动application directoy之外的所有模块目录来解决这个问题。然后从我的观点那边main.php我可以用这样的object元素调用模块:

<object type = "text/html" data = "<?php echo base_url(); ?>Module01/ContentA/story_html5.html"></object>

因此,我不需要更改html模块中数百个文件的任何代码。它通常会加载css和js以及其他资源。