codeigniter的链接不起作用,不能与函数参数匹配

时间:2015-07-05 07:07:18

标签: codeigniter url

我有功能

index($errorMsg, $successMsg) {....}

当我输入网址时,它可以正常工作。

http://localhost/website/index.php/home/index/1234/5678

但它不起作用但是当我输入网址时。

http://localhost/website/index.php/home/index//5678

5678将是$ errorMsg。

是否有任何提示

2 个答案:

答案 0 :(得分:1)

通过CI中的get方法通过函数参数传递成功或错误参数的非常糟糕的解决方案
尝试使用会话闪存数据在重定向视图中传递成功或错误消息。

$this->session->set_flashdata('errorMsg', '1234');
$this->session->set_flashdata('successMsg', '5678');

并显示变量:

function index() 
{
   echo $this->session->flashdata('errorMsg');
   echo $this->session->flashdata('successMsg');
}

使用此解决方案以避免错误。

答案 1 :(得分:0)

您的解决方案

声明这样的功能

index($errorMsg, $successMsg=NULL) {....}

<强>解释

index($errorMsg, $successMsg)函数需要两个参数(变量)。如果你没有通过它将产生你的情况下发生的错误。

index($errorMsg, $successMsg=NULL)函数需要第一个和第二个是可选的。如果你没有传递第二个参数$successMsg,则值将为null。

注意

/home/index//5678不需要在index.One之后使用双斜杠来解决你的目的。你需要检查$successMsg。如果它为null意味着你只通过了$errorMsg