codeigniter如何在视图中显示数据库查询结果以及如何重定向相同的功能?

时间:2016-08-01 11:54:11

标签: php codeigniter

我的模特看起来:

public function addMobileAction()
{   
    $mobile = $this->input->POST('mobile',TRUE);

    $qry = 'SELECT * FROM mobile 
            WHERE mobile='.$this->db->escape($mobile);

    $query =$this->db->query($qry);


    $value=$query->num_rows();

    if($value == 0)
    {


        $mobile_id=$this->db->select('mobile_id')->order_by('mobile_id','desc')->limit(1)->get('mobile')->row('mobile_id');
        $mid=$mobile_id+1;

        $sql = "INSERT INTO mobile (mobile,mobile_id) 
                VALUES(".$this->db->escape($mobile).",".$this->db->escape($mid).")";
                $this->db->query($sql);


                return "Registered Sucessfully! Your Id is: ".$mid;

    }

    else
    {
            $mobile_id=$this->db->select('mobile_id')->where('mobile', $mobile)->get('mobile')->row('mobile_id');

            return "Already Registered! Your Id: ".$mobile_id; 

    }
}

我的控制器是

public function addMobileProcess()
{ 

    if(($this->session->userdata('username')!=""))
    {
        $this->load->library('form_validation');
        $this->form_validation->set_rules('mobile', 'mobile', 'xss_clean|min_length[10]|required');


        if($this->form_validation->run() == FALSE)
        {
            $this->home();
        }
        else
        {
            $result= $this->ContentModel->addMobileAction();


                $datasucess['mobileid']=$result;
                $data['sucess'] = $this->load->view('sucess', $datasucess, TRUE);
                $this->load->view('index',$data);     

        }
    }
    else
    {
        $this->load->view('login');
    }
}

我的需要是我必须从模型中获取返回值,并根据检查的条件在视图中显示为消息在此模型中,视图与发布数据的视图相同。

这意味着在数据提交后我必须重定向到调用视图的功能,我必须显示 "已经注册!您的ID:"。$ mobile_id; 如果手机号码已经注册且 "注册成功!如果手机号码是新的,则您的ID为:"。$ mid;

如何完成重定向?什么修改我必须做什么。我是这种情况的新手。提前感谢所有人。

1 个答案:

答案 0 :(得分:0)

public function addMobileAction()
{   
    $mobile = $this->input->POST('mobile',TRUE);

    $qry = 'SELECT * FROM mobile 
            WHERE mobile='.$this->db->escape($mobile);

    $query =$this->db->query($qry);


    $value=$query->num_rows();

    if($value == 0)
    {
        $mobile_id=$this->db->select('mobile_id')->order_by('mobile_id','desc')->limit(1)->get('mobile')->row('mobile_id');
        $mid=$mobile_id+1;

        $sql = "INSERT INTO mobile (mobile,mobile_id) 
                VALUES(".$this->db->escape($mobile).",".$this->db->escape($mid).")";
                $this->db->query($sql);


                return TRUE;

    }

    else
    {
            $mobile_id=$this->db->select('mobile_id')->where('mobile', $mobile)->get('mobile')->row('mobile_id');

            return "Already Registered! Your Id: ".$mobile_id; 

    }
}

//控制器

public function addMobileProcess()
{ 

    if(($this->session->userdata('username')!=""))
    {
        $this->load->library('form_validation');
        $this->form_validation->set_rules('mobile', 'mobile', 'xss_clean|min_length[10]|required');


        if($this->form_validation->run() == FALSE)
        {
            $this->home();
        }
        else
        {
            $result= $this->ContentModel->addMobileAction();
//check if result is true or not and perform conditions as per the condition     

        }
    }
    else
    {
        $this->load->view('login');
    }
}