codeigniter: comment redirection après la connexion au contrôleur actuel (php_self régulièrement en php)
Eh bien, c'est pas vraiment un problème, mais je vérifie si l'utilisateur existe et journal et de les rediriger vers le site/members_area, mais je ne veux pas envoyer l'utilisateur vers une page spécifique, mais je veux recharger le contrôleur actuel.
Donc, si je me connecte dans l'index/la maison je voudrais être redirigé à l'index/la maison, comment dois-je procéder?
régulièrement en php, je mettrais dans l'action pour rediriger vers la page en cours
<?php echo $_SERVER['PHP_SELF']; ?>
C'est le code dans le cadre
function validate_credentials()
{
$this->load->model('membership_model');
$query = $this->membership_model->validate();
if($query) //if the user's credentials validated...
{
$data = array(
'username' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
redirect('site/members_area'); //<-- this line here should be dynamic
}
else //incorrect username or password
{
$this->index();
}
}
OriginalL'auteur Christophe | 2010-04-16
Vous devez vous connecter pour publier un commentaire.
J'ai résolu ce problème moi-même en ayant un formulaire de connexion dans l'en-tête qui est toujours présente à l'un de connexion du contrôleur, mais le hic, c'est que l'en-tête de formulaire de connexion qui s'affiche sur chaque page) a toujours caché entrée appelé rediriger les login contrôleur des captures...
Voici la configuration de base (assurez-vous que l'url helper est chargé):
L'En-Tête De Formulaire De Connexion
La Connexion Du Contrôleur De Forme
La meilleure partie est que vous garder le réglage de la rediriger sur l'échec et le rediriger l'entrée est défini, si vous vous connectez depuis un autre endroit.
Le Contrôleur
Ce qui se passe ici est: est-ce
C'est juste un exemple de base. Vous pouvez bien sûr le modifier au besoin.
OriginalL'auteur bschaeffer
Vous pouvez le faire comme ceci. N'oubliez pas de charger la session de la bibliothèque et l'url helper.
Passer au-dessus de la flashdata avec le login et le rediriger à l'aide de:
OriginalL'auteur rkj
Je suis sûr qu'il peut y avoir une meilleure façon, mais la façon dont je le fais, c'est le moment de la vérification si l'utilisateur est connecté en échec-je utiliser
$this->session->set_flashdata('redirect_url', current_url());
et de le passer avec le formulaire de connexion donc je sais où rediriger l'utilisateur vers.Comme je l'ai dit, je suis sûr qu'il ya une façon plus propre de faire cela, mais je ne l'aime pas
$_SERVER['HTTP_REFERER'];
comme il ne peut pas vraiment faire confiance.Vous devez être sûr que l'URL helper est chargé. Désolé, j'aurais dû en parler. Si ce n'est pas elle, ce genre d'erreur en êtes-vous?
Désolé... juste regardé de nouveau... Ce serait... redirect($this->session->flashdata('redirect_url'));
désolé pour la réponse tardive mais je suis juste en avant de la page d'accueil de nouveau
OriginalL'auteur vernonk