Coeigniter Url:用斜杠分隔变量

时间:2018-04-30 06:20:02

标签: codeigniter codeigniter-3

我正在使用codeigniter来开发我的网站。当提交表单时,Iam变量用?分隔?和&amp ;.我希望用下面的斜杠分隔变量。

现在变成这样

http://example.com/controller/method?id=22&sd=31

我想要一个如下所示的网址

http://example.com/controller/method/22/31

Html代码如下:

<form action="<?php echo base_url();?>controller/method" method="get">
<div class="form-group">
<select id="id" name="id" class="selectcl  form-control" data-live-search="true" title="Pick Your place" > 
<option value="22" >22</option>  
</select>
</div>
<div class="form-group">
<input type="text" class="form-control" name="sd" id="sd" placeholder="Enter details"  title="please choose">//getting values here by autocomplete
</div>
<div class="form-group">
 <button type="submit" class="btn find" value="submit" ></i>Start </button>
</div>
</form>

尝试了URI路由及以下

$config['enable_query_strings'] = FALSE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';

请帮我找一个解决方案。

2 个答案:

答案 0 :(得分:2)

将表单方法get更改为post

<form id="form" action="<?php echo base_url('controller/method');?>" method="post">

在页面中添加以下jquery。

$(function(){
    $('button[type="submit"]').on('click', function(e){        
        e.preventDefault();       
        var id = $.trim($('#id').val());
        var sd = $.trim($('#sd').val());
        if(id.length > 0 && sd.length > 0){
            var url_string  = new URL($('#form').attr('action'));
            window.location.href = url_string.href.concat(((url_string.href.endsWith('/')) ? '' : '/'),id,'/',encodeURIComponent(sd));
        } 
    });    
});

答案 1 :(得分:1)

如果您想通过网址传递价值,请尝试以下链接:

Send form input value to URL