在codeigniter中登录成功后无法加载仪表板页面

时间:2014-06-16 07:49:32

标签: php codeigniter xajax

我创建了一个控制器admin.php,当我尝试加载用dashboard()方法编写的仪表板页面时,它给了我找不到页面的错误。 请帮帮我,我是codeigniter的新手。

这是控制器:admin.php

<?php 

class admin extends CI_Controller
{

public function __construct()
{        

    parent::__construct();                  
    $this->xajax->register(XAJAX_FUNCTION,array('loginSubmit',&$this,'loginSubmit'));
$this->xajax->processRequest();
}
function index()
{
    $template['xajax_js'] = $this->xajax->getJavascript(base_url('xajax_js'));
    $this->load->view('admin/index',$template);
    //$this->dashboard();
} 

public function loginSubmit($formData)
{
    foreach($formData as $id=>$field)
    {
        $_POST[$id]=$field;
    }
    $objResponse=new xajaxResponse();   
    $loginData['username']=$this->input->post('uname');
    $loginData['password']=$this->input->post('password');
    $response=$this->munafa_model->login($loginData);
    if($response)
    {

        //$this->dashboard();
        $objResponse->alert("login");
        //$objResponse->redirect("admin/dashboard");
        $objResponse->script("window.location='admin/dashboard'");
    }
    else
    {
        $objResponse->alert("Invalid Login Credentials.");
        $objResponse->script("window.location.reload();");
    }
    return $objResponse;
}
public function dashboard()
{
    $template['xajax_js'] = $this->xajax->getJavascript(base_url('xajax_js'));
    $this->load->view('admin/header');
    $this->load->view('admin/dashboard',$template);
    $this->load->view('admin/footer');
}
}
?>

仪表板功能在调用索引方法时正在工作,但在登录成功后它不起作用。 loginsubmit方法的else部分正在执行,并且从if部分返回消息,只有页面没有重定向,它给页面找不到错误。

模型方法

public function login($loginData)
{
    $table_name="admin_login as al";
    $this->db->where('al.username',$loginData['username']);
    $this->db->where('al.password',$loginData['password']);
    $this->db->select('al.*')->from($table_name);
    $query=$this->db->get();
    if($query->num_rows==0)
    {
        return false;
    }
    else 
    {
        $row=$query->row();
        $this->setSessionData($row);
        return true;
    }
}

1 个答案:

答案 0 :(得分:0)

您确定重定向指向正确的位置吗?

$objResponse->script("window.location='admin/dashboard'");

将SITE_URL添加到此,以查看是否修复了它(您需要加载URL帮助程序);

$objResponse->script("window.location='" . site_url('admin/dashboard') . "'");