我需要重定向网址 http:/domainnamefoldernamefunctionnamedynamicstring。 到 http:/domainnamefoldernynamicstring。 .
我已经在我的路线中添加了这个
$route['([a-zA-z_]+)'] = 'controllername/functionname/$1';
我能够访问这个网址 http:/domainnamefoldernynamicstring。 只有当我在网址中输入时才会出现。否则,在点击按钮时,该网站是重定向到 http:/domainnamefoldernamefunctionnamedynamicstring。 现在显示404未找到。
查看页面代码
<a href="<?php echo base_url('functionname');?>/<?php echo $dynamicstring ;?>"></a>
控制器
public function functionname($dynamicstring)
{
$data['fun1'] = $this->Modelname->fun1($dynamicstring);
$data['fun2'] = $this->Modelname->fun2($dynamicstring);
$this->load->view('folder/viewpage',$data);
}
谁能帮我解决这个问题?
所以,我创建了一个演示,它为我工作。我已经在代码中解释了。路由.php
// As the name suggests here {functionname} is any function inside the controller, controller name is {controller} which is inside folder named {folder}.
$route['functionname/(:any)'] = 'folder/controller/functionname/$1'; // if you want {foldername} here then replace {functionname} with {foldername}
Controller.php
class Controller extends CI_Controller {
public function functionname($dynamicstring){
echo $dynamicstring;
}
}
观点
<?php
//get the value in $dynamicstring(your condition)
$dynamicstring = 'harry-potter'; //say harry-potter
?>
<a href="<?php echo base_url("functionname/$dynamicstring"); ?>">My name</a>
<!--<a href="<?php echo base_url("foldername/$dynamicstring"); ?>">My name</a>-->
如你所见,它的工作原理对我来说很好。看看对你有没有帮助。