我正在使用CodeIgniter设计网站,而我无法让锚点正常工作。
以下是我如何使用它。它在codeigniter中的应用程序的views文件夹中的文件中使用。
<?php echo anchor('/profile', 'PROFILE'); ?>
我的目的是让锚点加载配置文件控制器,它位于codeigniter中的应用程序控制器中。但是,当我碰到链接时,它表示找不到该文件。
我自动加载了url帮助函数alreader,该文件中的其他函数正在运行,如site_url()
。
我不知道我错过了什么?你有任何建议吗?这是我与codeigniter的第二个项目,所以我还在学习。
编辑:是的,我遵循codeigniter中的命名约定,并且该文件具有索引功能。我尝试没有正斜杠,它仍然给出相同的结果。
这产生的HTML链接是localhost/profile
。这是我应该做对的?因为对于codeigniter,它是url/controller/function
。我做了一个mod重写来从url中删除index.php,但这应该不是问题,不是吗?我会再次尝试查看基本网址。
答案 0 :(得分:1)
您确定需要领先的正斜线吗? 你试过了吗?
<?php echo anchor('profile', 'PROFILE'); ?>
如果您尝试进入控制器文件夹中的“profile”子文件夹,则只会使用斜杠。 当网址变得混乱时,帮助我的是在浏览器中键入我想要到达的路径的完整网址(以确保我没有获得404等)。从那里你可以从最后开始,然后回去看你错过了什么。
但是您通常希望从控制器名称开始并添加您正在调用的函数:
anchor(controllerName/functionName)
有关示例,请参阅CodeIgniter URL Helper。
编辑:还 - 您可能需要检查配置base_url的设置。如果发生了奇特的.htaccess事件,你的base_url需要正确设置。
答案 1 :(得分:0)
有一个非常简单的解决方案去配置/常量并在那里定义SITE_URL并将其值设置为
http://localhost/myprojectname/index.php.
然后在这里使用它。
<?php echo anchor(SITE_URL.'/profile', 'PROFILE'); ?>