2011-08-15 8 views
0

次の必要があります。 私は2.02 CodeIgniterの使用私はhtaccessをCodeIgniterのルート

でのindex.phpを削除し、私は、コントローラのポストを持っているし、ルート

​​

と、私が欲しいものを得る:ドメインを。 com/14の代わりにdomain.com/post/14

私は次のコントローラが好きです:ログイン、メンバーなど

しかし、私がdomain.com/loginに行くと、私はdomain.comにリダイレクトされます。誰かが私の解決策を得ることができれば、ログインコントローラに行くことができます。

これは私のルートである:

$route['default_controller'] = "index"; 
$route['404_override'] = ''; 
$route['(:any)'] = "post/index/$1"; 
$route['signup/(:any)'] = "signup/index/$1"; 

とのhierは私が必要なものの効果である:

domain.com/camera-33455-cannon-2001 
domain.com/samsung-6678-new-gallaxy-2 

とも

domain.com/signup 

TNX

答えて

3

のような他のコントローラを取得しますルートはhandlですroutes.phpファイルに記載されている順番で表示されます。コントローラーを上に置くと、(:any)は、以前に処理されなかったものだけを処理する必要があります。

は、それを変更してみてください:

$route['default_controller'] = "index"; 
$route['404_override'] = ''; 
$route['signup/(:any)'] = "signup/index/$1"; 
$route['(:any)'] = "post/index/$1"; 
+0

これは私が持っているものです $ route ['default_controller'] = "index"; $ルート['404_override'] = ''; $ route ['(:any)'] = "m/index/$ 1"; $ route ['signup /(:any)'] = "申し込み/インデックス/ $ 1"; idは動作しません – Dakadaka

+0

いいえ、サインアップでは機能しません – Dakadaka

+0

このページの構文で試してみてください:http://codeigniter.com/user_guide/general/routing.html –

2

あなただけpost/indexルートの数字をしたいですか?

$route['default_controller'] = "index"; 
$route['404_override'] = ''; 
$route['signup/(:any)'] = "signup/index/$1"; 
$route['(:num)'] = "post/index/$1"; 

この方法で、/15/post/index/15にリダイレクトされますが、/bobはまだBobコントローラをロードします:あなたはこれを使ったほうが良いかもしれません。

+0

これは私が持っていたいものです: domain.com/camera-33455-cannon-2001 – Dakadaka

+0

そこには道がありますあなたがサインアップを見たらそのルートで言う...それを無視しないでください!コントローラを作るたびに、私はルートを作ることができました – Dakadaka

+0

あなたは実際に何をしたいのかを反映するためにあなたの質問を更新してください。 (個人的には、 '/ post/camera-33455-cannon-2001'のままにしておく方が良いと思うが、それはちょうど意見だ。) – OverZealous

関連する問題