繁体   English   中英

登录或注册后重定向到上一页

[英]redirect to previous page after logging in or registering

我是Codeigniter的新手。 我正在开发一个工作站点,我搜索一个工作并找到合适的工作,然后单击工作详细信息,然后如果用户已登录,则出现立即应用按钮,但是如果用户未登录,则登录或注册按钮出现。 我需要做的是在他们完成过程后单击登录或注册,然后他们需要重定向到搜索到的页面。 我如何在cdeigniter中做到这一点?

我的工作详细信息页面是

public function details($slug = NULL)
{
    $this->load->model('jobmodel');
    $this->load->helper('job');
    $slug = $this->uri->segment(3);
    $jobID = $this->jobs_model->getJobidFromSlug($slug);
    $userID = $this->session->userdata('user_id');
    $check = $this->jobs_model->checkAppliedJob($userID, $jobID);
    $data['check'] = $check;

    // #common head section

    $data['site_title'] = 'Job By Country | Neev ';
    $data['site_keywords'] = 'job,dubai,hr,portal';
    $data['site_description'] = 'Neev  Home, Hr Portal, Job ';
    $join = 'LEFT JOIN job_industry AS ji ON(ji.id = ejp.job_industry) LEFT JOIN job_country AS jc ON (ejp.country_id = jc.id) 
                LEFT JOIN job_category AS jcat ON (ejp.job_category = jcat.id)where ejp.slug ="' . $slug . '"';
    $jobsDetails = Jobmodel::find(array(
        'select' => 'ejp.*,ji.title as industry_type,jc.title as country,jcat.title as category',
        'from' => 'employer_job_posting as ejp',
        'joins' => $join
    ));

    // echo Jobmodel::connection()->last_query;
    // die;

    $data['main_content'] = 'jobFulldetails';
    $data['jobs'] = $jobsDetails;
    $this->load->view($this->jobView, $data);
}

您可以添加此逻辑,以在会话中浏览上一页。 登录或注册后,获取该会话变量的值以重定向到该页面。 像这样

header("location:$_SESSION['prev_page']");

这对我有用

<script type="text/javascript">
         var back = document.referrer;
        window.location.replace(back);
</script>

是否可以使用CI的URL帮助器随附的redirect()方法将用户重定向回控制器?
http://ellislab.com/codeigniter/user-guide/helpers/url_helper.html页面底部

就像是

redirect('search/foo/bar');

我经常用这个。 搜索控制器的行为决定了您实际的重定向链接的外观。 我在控制器中经常使用_remap()。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM