【发布时间】:2013-12-16 22:29:40
【问题描述】:
我从 CI 开始,我需要一些帮助。我正在尝试使用 Ajax 加载一些 html 页面,这些 html 文件存储在视图文件夹中,并且我正在尝试使用控制器访问这些文件,但直到现在我还没有成功。我想知道如何访问这些文件,以及我使用的控制器是否正确或有更好的方法。
控制器
class Router extends CI_Controller
{
public function index($file)
{
$this->load->view($file);
}
}
Ajax
var SampleFunction = function (router) {//router is my base_url() + '/router'
var pageContentBody = $('.page-content .page-content-body');
if ($("#startLoadTag")){
$.ajax({
type: "post",
cache: false,
url: router + '/SampleLink.html',
dataType: "html",
success: function (html) {
pageContentBody.html(html);
}
});
}
}
直到现在我才得到 404 not found。
【问题讨论】:
-
不确定您是否已将 apache 配置为删除索引,但如果没有,您应该点击 router+ '/index/SampleLink.html'
-
无法在 codeigniter 中将参数传递给
function index()。将/视为方法路线。最简单的方法是创建另一个函数并在您的 ajax 路径中使用它 -
好的,我修复了错误。但是现在我在系统上有一个很大的安全漏洞。如果我在 Chrome 上更改 HTML 链接名称并单击该链接,则会加载该文件。有任何东西可以阻止更改链接名称或增加安全性的东西。你有什么建议?
标签: php jquery ajax codeigniter