Codeigniter 自定义 url 字符串
Codeigniter custom url string
我是 codeigniter 的新手,我正在制作一个医生网站,需要允许用户使用 http://www.mywebsite.com/newyork 之类的简单 url 来搜索医生。所以这个 url 不会没有任何 class,因为可以有许多状态,并且不能为每个状态都有 class。我应该在路由脚本中更改 404 覆盖吗?或者有更好的实现方式
$route['(:any)']='search/check_state';
如果我使用上面的路由,那么 /login 等其他页面不会 work.Please 帮助
试试看
$route['search/check_state/:any'] ='search/check_state';
创建包含所有状态的数据库并按此方式进行
里面search/check_state
// Get state from URL
$state = $this->uri->segment(1, "");
// Make sure state is not null and its found in database
if($state <> "" && $this->validateState($state)){
// Valid state, continue
}else{
// Give error message / redirect to 404 page
}
向控制器添加新功能
function validateState($state){
// If database contains $state then return true else return false
}
更新
您也可以使用 POST 表格。
将表单制作成用户输入详细信息的页面
echo form_open(base_url().'path_to_post_validation');
// make form here that sends "state" into page that handles validation
echo form_close();
处理POST验证
// Make sure user has send POST request
if($this->input->post()){
// Set form validation rules
$this->form_validation->set_rules('state', 'state', 'required|trim|xss_clean');
// Run form validation
if ($this->form_validation->run() == TRUE){
// Store state into variable
$state = $this->input->post('state');
// Check database that it contains $state and then continue or give error message
}
}
我是 codeigniter 的新手,我正在制作一个医生网站,需要允许用户使用 http://www.mywebsite.com/newyork 之类的简单 url 来搜索医生。所以这个 url 不会没有任何 class,因为可以有许多状态,并且不能为每个状态都有 class。我应该在路由脚本中更改 404 覆盖吗?或者有更好的实现方式
$route['(:any)']='search/check_state';
如果我使用上面的路由,那么 /login 等其他页面不会 work.Please 帮助
试试看
$route['search/check_state/:any'] ='search/check_state';
创建包含所有状态的数据库并按此方式进行
里面search/check_state
// Get state from URL
$state = $this->uri->segment(1, "");
// Make sure state is not null and its found in database
if($state <> "" && $this->validateState($state)){
// Valid state, continue
}else{
// Give error message / redirect to 404 page
}
向控制器添加新功能
function validateState($state){
// If database contains $state then return true else return false
}
更新
您也可以使用 POST 表格。
将表单制作成用户输入详细信息的页面
echo form_open(base_url().'path_to_post_validation');
// make form here that sends "state" into page that handles validation
echo form_close();
处理POST验证
// Make sure user has send POST request
if($this->input->post()){
// Set form validation rules
$this->form_validation->set_rules('state', 'state', 'required|trim|xss_clean');
// Run form validation
if ($this->form_validation->run() == TRUE){
// Store state into variable
$state = $this->input->post('state');
// Check database that it contains $state and then continue or give error message
}
}