页面刷新(F5)始终导致表单提交

时间:2011-09-25 16:36:54

标签: php codeigniter

对CI有点新,谷歌搜索和溢出很多,仍然没有答案

  1. 用户进入网站。
  2. 成功验证后,重定向到主页
  3. 网址上的链接与类/方法
  4. 保持一致
  5. 如果你在主页上刷新页面 - 你总是有关于重新填充表格的问题(chrome / firefox 100%)
  6. 解决方案可能是:成功后重定向到另一个类或方法

    但我不知道怎么做,文档似乎更像是对我的引用

    代码在这里:http://paste.ubuntu.com/696751/第28行 - 如何通过重定向到另一个视图重定向到另一个类或方法?

2 个答案:

答案 0 :(得分:1)

CodeIgniter中的一个例子可能是:

class login extends CI_Controller
{
    function index ()
    {
        $this->load->library('form_validation');
        $this->load->helper('url');
        //Set form validation rules here: http://codeigniter.com/user_guide/libraries/form_validation.html
        if ($this->form_validation->run() == TRUE)
        {
            //login user here



            redirect('login/sucLogin'); // or just redirect to '/' if you want to send them to your home page
        }
        else
            $this->load->view('loginForm'); //make form
    }
    function sucLogin ()
    {
        echo 'Successfully logged in';
        echo anchor('/', 'Go Home');
    }
}

答案 1 :(得分:1)

  1. 检查用户是否提交了表单
  2. 验证登录凭据
  3. 重定向成功

    公共功能登录() {     if($ _POST)     {         $ login = $ this-> input-> post('login');         $ password = md5($ this-> input-> post('password'));

        $q = $this->db
            ->where('login', $login)
            ->where('password', $password)
            ->limit(1)
            ->get('userbase');
    
        if ($q->num_rows > 0 )
        {
            redirect('enter/main');
        }
    }
    
    $returnlogin['login'] = $login;
    $this->load->helpers('form');
    $this->load->view('login_form',$returnlogin);
    

    }

    公共功能主() {     $这 - >负载>查看( '主'); }