duanjiong5686
2017-05-30 08:29
浏览 69
已采纳

如何在Codeigniter中加载视图或在多个环境中使用redirect()?

Want to check Environment and if matches some case then want to redirect or load some view. get_instance(); not working inside index.php where environment check
what i'm looking something like below:

if (ENVIRONMENT === "production")
{

    /*if(error ="db error")
    redirect("/someview","refresh");
    or load view header and footer
    */

}

图片转代码服务由CSDN问答提供 功能建议

想要检查环境,如果匹配某些情况,则需要重定向或加载某些视图。 get_instance(); 在index.php里面没有工作环境检查 我在看下面的内容:

  if( 环境===“生产”)
 {
 
 / * if(错误=“db error”)
 redirect(“/ someview”,“refresh”); 
或加载视图页眉和页脚
  * / 
 
} 
   
 
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dqajyxqem115006813 2017-05-30 14:26
    已采纳

    i just confused about error handling mechanism in CI. By the help of stackoverflow users i found steps to turn off the errors . but now i can't handle those errors.

    If you want to handle a certain error, You can redirect it to a certain view in the process as what you have mentioned in your question.

     // Assuming you have a [Home] Controller that extends to your [Common] parent class
     class Home extends Common {
        public function index()
        {
            $this->load->helper('url');
            $bCheck = false;
            if ($bCheck !== true) {
                $this->handleRedirectMethod('path/to/your/controller');
            }
        }
    }
    

    Then on your parent [Common] controller. (e.g Common.php)

    class Common extends CI_Controller
    {
        public function handleRedirectMethod($sUrl, $sMethodName = 'refresh', $sStatusCode = '302')
        {
            $sServerName = $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST'];
            redirect($sServerName . '/' . $sUrl, $sMethodName, $sStatusCode);
        }
    }
    

    Hope this makes you understand how you can handle those errors

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题