[英]Codeigniter Routing?
我在Codeigniter Project中的路由遇到問題。 實際上我已經在控制器,視圖和模型下創建了admin文件夾,以訪問admin部分。而我的route.php文件如下所示:
$route['default_controller'] = "admin/login";
$route['admin/(:any)'] = "admin/admin/$1";
$route['404_override'] = '';
當我單擊登錄頁面的提交按鈕時,它將重定向到同一登錄頁面。 實際上應該執行的操作不會重定向到該位置。
檢查表單標簽。 可能是其中有動作 。 並且您的按鈕類型可能會提交,請刪除並再次檢查
如果要在項目中使用另一個CI實例,則將其保存在項目文件夾中,如下所示:
/project
/application
/admin
/system
在您的admin文件夾中,您應該有另一個CI項目,您將從此處創建管理面板。
/project/admin
/application
/system
您可以根據需要從任何項目中設置配置和路由以及任何所需內容。
希望能有所幫助。
在routes.php文件中:
$route['default_controller'] = "your default controller";
$route['404_override'] = '';
在htaccess中
#Options +FollowSymlinks
#RewriteEngine on
#
#RewriteCond $1 !^(index\.php|assets|uploads|tt|resources|robots\.txt|favicon\.ico)
#RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteEngine on
RewriteCond $1 !^(index\.php|cronDailyProof\.php|cronWeeklyProof\.php|cronMonthlyProof\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1 [L,QSA]
DirectoryIndex index.php
以上兩個更改解決了我的問題。
在route.php中
$route['default_controller'] = "home";
$route['404_override'] = 'errors';
$route['admin'] = 'admin/login';
並在htaccess中
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
rewriteRule ^(([a-z0-9\-]+/)*[a-z0-9\-]+)$ $1/ [NC,R=301,L]
這些變化為我解決了這個問題
如果您必須遵循default_controller家庭控制器的工作,則家庭控制器工作,而頁面不可用,則pagenotfound控制器工作。 在我的默認頁面上,以在單擊登錄按鈕時在登錄頁面上移動。 然后像這樣
<?php
$attributes = array("class" => "form-horizontal", "id" => "loginform", "name" => "loginform");
echo form_open("login/index", $attributes);
?>
//login button like this and its working
<button type="submit" name="btn_login" id="btn_login" class="btn btn-default" value="Login"><?php echo lang('Login'); ?></button>
<?php echo form_close(); ?>
My Route.php file
$route['default_controller'] = 'home';
$route['404_override'] = 'pagenotfound';
$route['translate_uri_dashes'] = FALSE;
My .htaccess file
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|admin|js|css|images|assets|uploads|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.