dongqingcheng2903
2014-12-25 13:19
浏览 107
已采纳

CodeIgniter中的URL复制类似于http:// localhost / CI / login / login / login

Am working on a codeigniter application. I have a login.php with the following code

public function index()
    {
        $this->load->view('login');
    }
    public function login()
    {
        $username=$this->input->post('username');
        $password=$this->input->post('password');
        $data=array(
            'username'=>'$username',
            'password'=>'$password'
        );
        if(1){
            redirect($this->config->base_url().'admin');
        }
        else{
            redirect($this->config->base_url().'login');
        }
    }

I have declared login as the default_controller.

I have view login.php which has a login form and submit action to login/login. when I click on submit button.

url-at-the-address-bar  expected-url  redirected-url
[root]                  login/login   login/login
login/login             login/login   login/login/login
login/login/login       login/login   login/login/login/login

and so on. The url keeps adding up. Tried htaccess. htaccess has effects on this issue. Please help

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

我正在处理一个codeigniter应用程序。 我有一个带有以下代码的login.php

  public function index()
 {
 $ this-> load-> view('login'); 
} 
公共函数login()
 {
 $  username = $ this-> input-> post('username'); 
 $ password = $ this-> input-> post('password'); 
 $ data = array(
'username  '=>'$ username',
'password'=>'$ password'
); 
 if(1){
 redirect($ this-> config-> base_url()。'  admin'); 
} 
其他{
重定向($ this-> config-> base_url()。'login'); 
} 
} 
   \  n 
 

我已将login登录为default_controller。

我查看了login.php,其中包含登录表单并提交登录/登录操作。 当我点击提交按钮时。

 
url-at-the-address-bar expected-url redirected-url 
 [root] login / login login / login 
login / login login  / login login / login / login 
login / login / login login / login login / login / login / login 
  
 
 

等等。 网址不断加起来。 Tried htaccess。 htaccess对此问题有影响。 请帮助

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • dongsaoshuo4326 2014-12-25 17:15
    已采纳

    I used the suggestion by Simo, but it did not work. I finally found the answer by changing the form action to:

    <form action="http://localhost/CI/login/login" method="post">
    
    已采纳该答案
    打赏 评论
  • dpdt79577 2014-12-25 15:24

    dont use base_url() when redirecting to other contollers, you should change this :

    if(1){
      redirect($this->config->base_url().'admin');
    }
    else{
      redirect($this->config->base_url().'login');
    }
    

    to this :

    $is_logged = false; // To replace with login statement.
    
    if($is_logged)
      redirect('admin');
    else
      redirect('login');
    
    打赏 评论

相关推荐 更多相似问题