Php 获取控制器中的变量,并将其包含在ajax中,将url重定向到另一个控制器函数

Php 获取控制器中的变量,并将其包含在ajax中,将url重定向到另一个控制器函数,php,ajax,codeigniter,Php,Ajax,Codeigniter,我的问题是,当我在模型中收集数据后,在控制器中使用ajax发布时,我的下一步是访问视图,但不幸的是它不起作用,我只在firefox的inspect元素中查看它。 这是我的示例代码: public function view_generate_jo_number() { $jo_num = $this->input->post('jo_num'); $view_generated = $this->project_

我的问题是,当我在
模型
中收集数据后,在
控制器
中使用ajax发布时,我的下一步是访问
视图
,但不幸的是它不起作用,我只在firefox的inspect元素中查看它。 这是我的示例代码:

public function view_generate_jo_number()
    {
            $jo_num    =   $this->input->post('jo_num');
            $view_generated = $this->project_models->view_generate_jo_number($jo_num);
            $this->load->view('templates/header');
            $this->load->view('jo_generated_project_views', $view_generated);
            $this->load->view('templates/footer');
    }
因此,我再次考虑另一个解决方案,即我有这个ajax。如果成功,它将重定向到同一控制器中的另一个函数

$("#view").click(function()
    {
        $.ajax({
            url : '<?php echo base_url('jo_generator/view_generate_jo_number')?>',
            type: 'POST',
            data: {
                    jo_num: $('#new_jo').text()
                  },
            success: function(data){
                $.ajax({
                url : '<?php echo base_url('jo_generator/view_jo_number')?>',
                success: function(){
                }
                });
            }
            });
    });
我希望生成变量$view_,以便在另一个函数中使用它,即:

public function view_jo_number($view_generated)
    {
            $this->load->view('templates/header');
            $this->load->view('jo_generated_project_views', $view_generated);
            $this->load->view('templates/footer');
    }
因为我需要这个变量来查看视图中的数据

是否有一种方法可以使用ajax中的
success
访问它,或者从另一个函数调用该变量?
有人能帮我吗?

您可以返回变量并将其传递给success函数:

public function view_generate_jo_number()
    {
        if ($this->jo_generator_security_models->isAllowedToViewGenerateJO() === TRUE)
        {
            $jo_num    =   $this->input->post('jo_num');
            $view_generated = $this->project_models->view_generate_jo_number($jo_num);

            return $view_generated;
        }
    }
-

$(“#视图”)。单击(函数()
{
$.ajax({
url:“”,
键入:“POST”,
数据:{
jo_num:$('#new_jo')。text()
},
成功:功能(数据){
//根据需要使用数据。它应该是view\u generate\u jo\u number的返回值
$.ajax({
url:“”,
成功:函数(){
}
});
}
});
});

当我提醒数据时,它是空的。如何在ajax中的url中使用该返回值,以便访问如下变量:public function view_jo_number($view_generated){}第一:数据不应为空:看看这里:第二:我不确定如何调用php函数以及底层是什么,但您可以尝试以下操作:
[…]jo_generator/view_jo_number(数据)[…]
public function view_generate_jo_number()
    {
        if ($this->jo_generator_security_models->isAllowedToViewGenerateJO() === TRUE)
        {
            $jo_num    =   $this->input->post('jo_num');
            $view_generated = $this->project_models->view_generate_jo_number($jo_num);

            return $view_generated;
        }
    }
$("#view").click(function()
    {
        $.ajax({
            url : '<?php echo base_url('jo_generator/view_generate_jo_number')?>',
            type: 'POST',
            data: {
                    jo_num: $('#new_jo').text()
                  },
            success: function(data){
                // use data for what ever you want. It should be the return value of view_generate_jo_number
                $.ajax({
                url : '<?php echo base_url('jo_generator/view_jo_number')?>',
                success: function(){
                }
                });
            }
            });
    });