Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 页面刷新(F5)总是导致表单提交_Php_Codeigniter - Fatal编程技术网

Php 页面刷新(F5)总是导致表单提交

Php 页面刷新(F5)总是导致表单提交,php,codeigniter,Php,Codeigniter,对CI来说有点陌生,谷歌搜索了很多信息,但仍然没有得到答案 用户进入网站 成功验证后,被重定向到主页 url上的链接与类/方法保持相同 如果你在主页上刷新页面,你总是会遇到关于重新填充表单的问题(chrome/firefox 100%) 解决方案可能是:成功后重定向到另一个类或方法 但我不知道怎么做,文档对我来说更像是参考资料 代码如下:第28行-如何重定向到另一个类或方法,同时重定向到另一个视图?CodeIgniter中的一个示例可能是: class login extends CI_Cont

对CI来说有点陌生,谷歌搜索了很多信息,但仍然没有得到答案

  • 用户进入网站
  • 成功验证后,被重定向到主页
  • url上的链接与类/方法保持相同
  • 如果你在主页上刷新页面,你总是会遇到关于重新填充表单的问题(chrome/firefox 100%)
  • 解决方案可能是:成功后重定向到另一个类或方法

    但我不知道怎么做,文档对我来说更像是参考资料


    代码如下:第28行-如何重定向到另一个类或方法,同时重定向到另一个视图?

    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');
        }
    }
    
  • 检查用户是否提交了表单
  • 验证登录凭据
  • 成功时重定向

    公共函数登录() { 如果(美元邮政) { $login=$this->input->post('login'); $password=md5($this->input->post('password'))

    }

    公共功能main() { $this->load->view('main'); }


  • 可能重复的(参考)(相关)在CI论坛的第二个链接上,有一个带有可选成功页面的解决方案,但是如果我不想有一个成功页面?如何在没有额外页面的情况下解决这个问题?只需重定向到成功登录后希望用户重定向的任何位置。不确定为什么我的代码没有正确突出显示…这是在pastebin上:Donow why,但这是don't Not正在工作!如果我将$this->load->view('main')直接加载到if-中,它正在工作,但重定向不起作用!使用重定向时,只有空白页,这可能是因为
    redirect()
    是URL帮助程序中的一个方法,所以在使用该方法之前,您需要加载(
    $this->load->helper('URL')
    );只是不起作用,只是直接加载视图;/with redirect只有空白页您是否编写了表单验证规则?不,现在输入只对db起作用,它真的起作用了,告诉您-如果我这样做$this->load->view('main'));如果我的授权正确,我将进入主页,但我在刷新/重新填充时遇到问题,不知何故重定向对我来说不起作用,我想用CI方式来做。当然,我上面发布的方式是最正确的CI方式,使用表单验证库和url帮助器。我建议,在您学习之后,验证库非常棒d你看看他们如何使用它的例子,这对你将来会有很大帮助。
        $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);