redirection du codeigniter vers un autre contrôleur

je suis en train de diriger l'utilisateur vers ma page principale lorsque l'utilisateur est autorisé. Je fais la vérification d'utilisateur dans mon contrôleur login_check et j'ajoute $this->load->view('main'); La page se charge, mais l'adresse du site dans la page principale montrent encore

http://myprojectname/login_check

mais je veux qu'elle affiche

http://myprojectname/main.

Dois-je créer un nouveau 'main' contrôleur et charger la vue? Il semble redondant pour moi. Voici mon code.

partie de mon login_check.php

private function _user_check()
{
    $this->load->model('user_query');  //load my model
    $result=$this->user_query->query($this->input->post('username'),$this->input->post('password'))             

    if($result)  //the user is in DB
    {
        $data['view']='main'; 
        $this->load->view('include/template', $data);
        //the address bar shows http://myproject/login_check in main page       

    }else{  //the user is not in DB

        $data['view']='login';
        $this->load->view('include/template', $data);
    }

}
19
demandé sur ankit suthar 2012-01-20 20:22:18

2 réponses

tout d'abord, vous faites un très mauvais travail de vérification si l'utilisateur est authentifié (juste passer le nom d'utilisateur/Passer au model n'est pas le meilleur, devrait le traiter / vérifier avant de l'envoyer au model).

vous pouvez faire des redirections facilement en incluant le helper 'URL' et simplement utiliser:

redirect('/controller/method');

ou dans un monde réel, exemple:

redirect('/main');

Lien De Référence

55
répondu Jakub 2017-08-30 08:31:27

il y a une autre façon mais similaire à redirect(), si votre controller est Rest controller

restserver

vous pouvez utiliser rest client dans un autre contrôleur pour appeler des méthodes sur le contrôleur du serveur

restclient

0
répondu Sharon Abu 2014-05-28 12:08:27