【问题标题】:Pass data from Ajax to codeigniter 3将数据从 Ajax 传递到 codeigniter 3
【发布时间】:2016-10-01 00:33:32
【问题描述】:

我在这里查看了一些帖子,并尝试将数据从 api 调用传递到 codeigniter 3 上的控制器,我需要在根页面上的这些数据,所以我不知道该怎么做!

$.ajax({
    url: ' URL ',
    dataType: 'json',
    type: 'post',
    contentType: 'application/json',
    data: JSON.stringify( {
      "var1": "var1",
      "var2": "var2",
      "var3": "var3",
      "var4": "var4"
    } ),
    processData: false,
    success: function( data ){
        $.ajax({
            url: window.location.href,  <--- this is ok for root page? the controller is App.php and the function its Index()...
            dataType: 'json',
            type: 'post',
            contentType: 'application/json',
            data: {"data":data},
            processData: false,
            success: function( data ){
              console.log('pass');
            }
        });
    },
    error: function( jqXhr, textStatus, errorThrown ){
        console.log( errorThrown );
    }
});

然后在我的控制器

$data['data'] = $this->input->post('data');
$this->load->view('app', $data);

视图

<?=$data?>

但什么都没有,它不打印任何内容,也不在控制台中记录任何内容

【问题讨论】:

  • 首先对数据进行 json 编码,然后回显响应。
  • 检查内部ajax请求中的错误
  • @ShoyebSheikh ajax 错误说“SyntaxError: Unexpected token
  • 试试,url:"app",
  • @ShoyebSheikh--- POST m2m.ka/%3C?php%20echo%20base_url();?%3Eapp 404(未找到)

标签: php ajax codeigniter


【解决方案1】:

首先将所有数据转换为数组,然后使用$data = json_encode($array); 。 要以 json 格式呈现数据,您必须在 $this->output 对象中发送内容类型。

$this->output
    ->set_content_type('application/json')
    ->set_output(json_encode(array('foo' => 'bar'));

现在控制器中的方法将开始渲染您的 json 数据。

【讨论】:

  • 好吧,我试一试,但我在尝试将数据传递给控制器​​时遇到了以下问题,在 console.log 上打印了这个 ---> SyntaxError: Unexpected token
猜你喜欢
  • 2019-10-05
  • 2016-03-08
  • 1970-01-01
  • 2020-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多