托管时发生 codeigniter 缺少参数

codeigniter missing argument occured when hosted

如果我像这样在本地主机上打开: localhost/example/product/category/1 它会起作用,但是 当我删除数字 1 时,url 是这样的: localhost/example/product/category 它可以在我设置的页面上重定向,这是我的代码:

function category($id) {
  if(empty($id)) {
    redirect(base_url('index.php'));
  } else {
    $this->load->view('category'); 
  }
}

此代码在 localhost 上运行完美,但当我托管它时,输入 url 如下: www.example.com/product/category/,这不起作用并导致缺少参数。

我该怎么办? 请有人帮助我

谢谢

像这样更改您的代码

function category($id="") {
  if(empty($id)) {
    redirect(base_url('index.php'));
  } else {
    $this->load->view('category'); 
  }
}