2015-10-19 50 views
0

当我点击返回按钮时,我得到了确认表单提交错误。如何防止此问题?请为此提供解决方案。 我试图登录到ADMI面板和编辑管理员在这下面的代码在codeigniter grocery crud中确认表单提交错误

Admin controller: 
     public function index() 
     { 

      $data = $this->data; 
      $this->load->view('admin/login.php',$data); 
     } 
     public function login() 
     { 
      $data = $this->data; 
      $username=$this->input->post("username"); 
      $password=$this->input->post("password"); 

      if($username=='admin'&&$password=='admin123') 
      { 

       $this->load->view('admin/home.php',$data); 

      } 
      else 
      { 
       $data['error']="Invalid Username or Password"; 
       $this->load->view('admin/login.php',$data); 
      } 
     } 

     /* Function For Displaying the home page*/ 
     public function home() 
     { 

      $data = $this->data; 
      $this->load->view('admin/index.php',$data); 
     } 
     /* Common Function for calling the View*/ 
     public function _admin_output($output = null) 
     { 
      $output->base=$this->config->item('base_url'); 
      $output->site=$this->config->item('site_url'); 
      $output->css=$this->config->item('css'); 
      $output->js=$this->config->item('js'); 
      $this->load->view('admin/home_page.php',$output,'refresh'); 

     } 

      public function loadSlidingimg() 
     { 
      $crud = new grocery_CRUD(); 
      $crud->set_table('tbl_slideimg'); 
      $crud->columns('imgname','active'); 
      $crud->set_subject('Frontpage Sliding Images'); 
      $crud->display_as('imgname','Image name'); 
      $crud->set_field_upload('imgname','uploads'); 
      $crud->display_as('active','Active Flag'); 
      $crud->callback_after_update(array($this,'rename_slideimg_db')); 
      $crud->callback_after_insert(array($this,'rename_slideimg_db')); 

      $output = $crud->render(); 
      $this->_admin_output($output); 
     } 
     } 

请针对此问题

+0

请提供更多解释。点击浏览器后退,你想清除缓存? –

+0

@Niranjan N Raju不,我没有清除缓存。 – user

+0

即时问,你想清除缓存? –

回答

0

它发生,因为带你到该网页的行动是一个POST请求提供解决方案。浏览器希望避免无意中的双重订购/付款/无论什么时候“返回”,当加载该页面时需要再次发布表单。

如何解决这个问题?我通常将用户重定向到这是一个GET请求加载页面时,它甚至可以在同一个页面,看到这样的回答:https://stackoverflow.com/a/3968038/357403
或者,你可以修改的历史:https://developer.mozilla.org/en-US/docs/Web/API/History_API

另外,请参阅PRG图案:https://en.wikipedia.org/wiki/Post/Redirect/Get

+0

如何解决我在上面的代码中的问题。请为此提供解决方案 – user

+0

什么是工作流程?你输入哪个功能?当你点击“返回”时,你在哪里,哪个网址应该是“返回”返回的地方? (请回答所有3) – Koshinae

+0

$ this-> load-> view('admin/home_page.php',$ output,'refresh');这里是我的问题 – user

0

尝试这个代码格式:

$this->load->view('admin/home.php', 'refresh', $data); 

redirect('home', 'refresh'); 
+0

上面的代码不工作。我想重定向到home_page而不是主页。 – user