我对CI很新,所以我想知道下面列出的一个功能将通过CI路由器完成,然后如何?
特征:
Q1.我需要以这样的方式显示我的用户个人资料mysite.com/johhn mysite.com/raju.radha
mysite.com/johhn1.
Q2.其他URL是mysite.com/photo/3434,mysite.com/album/3443等等等等.
我知道这可以通过使用来实现$route.对于Q2,这是解决方案
$route['photo/:num'] = "photo/photo_list";
$route['album/:num'] = "album/album_list";
Run Code Online (Sandbox Code Playgroud)
Q1的解决方案是什么?
提前致谢 !!!
frameworks codeigniter url-rewriting url-routing codeigniter-url
我有一个我在codeiginiter 2.0.1(我自己的个人网站)上建立的网站.我使用WAMP在本地构建了这个应用程序,它可以100%正常工作(本地).我将其上传到我的实时服务器,并且一直收到"找不到404页面"错误.这个错误来自codeigniter通过我的Home-> Error方法,而不是服务器,因此代码点火器肯定是有效的.
这是我的路线配置.如果我将404_override更改为"Home".它会加载我的家庭控制器,但是当我转到任何页面时,我找不到404页面.
$route['default_controller'] = 'Home';
$route['404_override'] = 'Home/Error';
Run Code Online (Sandbox Code Playgroud)
我怀疑这可能与我的.htaccess和Codeigniter配置有关.
// Codeigniter Config.php - Note: My Hosting is with Godaddy. [CGI/FastCGI]
$config['index_page'] = 'index.php?';
// Tried Auto and All others, REQUEST_URI works fastest for me.
$config['uri_protocol'] = 'REQUEST_URI';
Run Code Online (Sandbox Code Playgroud)
我的.htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L]
Run Code Online (Sandbox Code Playgroud)
我通过SO和Google尝试了很多这样的链接来解决这个问题,我重复尝试的那些链接在下面.
- CodeIgniter 404找不到页面,但为什么?
- 现有的控制器上的笨404
- http://codeigniter.com/forums/viewthread/60469/#297477
- http://codeigniter.com/wiki/Godaddy_Installaton_Tips
-以及很多其他
我敢肯定这已经与htaccess和mod_rewrite,任何想法?
$route['404_override'] = 'Home/Error'为我的任何控制器,它们会按预期显示和工作,但由于某种原因,它总是会抛出404页面.
如果我去:/index.php/home- 我得到错误No input …
找不到 codeigniter 是否有任何内置帮助程序来将字符串格式化为 url?例如,“Lorem ipsum dolor sat amet”将是“lorem-ipsum-dolor-sit-amet”或类似的东西。
如何制作这样的工作网址: example.com/controller/method?id=1&cat=2
我最近开始乱码CodeIgniter并在通过HTML或使用锚功能执行标准超链接时遇到问题,因为所有超链接在开始时附加我的服务器路由.所以说例如我在我的视图中编写了一个标准超链接,例如当我点击链接时<a href="www.testsite.com">Test site</a>它会返回http://localhost/test/index.php/test/www.testsite.com?我不确定我做错了什么,但猜测它可能与路由有关?
所以,我遇到了很大的问题.
我正在使用CodeIgniter.我有一个网站运行,有很多页面,所以网址太大,看起来太糟糕了.所以我想做的是缩短我的网址.例如:
www.abc.com/main/home/promotion/deals
我想做这样的事情:
www.abc.com/deals
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,我应该如何在CodeIgniter中做这件事?是否有内置的帮助器或库来处理我的问题?
所以我有一个动态链接,我想写这样的动态链接:
echo "<a href='".base_url('browse/category/').$all_categories[$j]['id']."'>";
Run Code Online (Sandbox Code Playgroud)
但是链接似乎是这样的......
www.example.com/browse/category2
Run Code Online (Sandbox Code Playgroud)
类别和动态数字之间没有斜杠(2).所以我认为另一种方式,但我认为这是一个混乱的方式:
base_url('browse/category')."/".$all_categories[$j]['id']
Run Code Online (Sandbox Code Playgroud)
有一个更好的方法吗??
非常感谢!
codeigniter ×5
php ×5
.htaccess ×1
frameworks ×1
hyperlink ×1
mod-rewrite ×1
redirect ×1
url-routing ×1