在Codeigniter的Controller中接收JSON

时间:2013-04-10 10:16:34

标签: jquery ajax codeigniter

将json传递给控制器​​:

$.post('xyz_controller/my_function', {url:"dummy data"}, 
    function(data) {
        alert("Success!");
    }, 'json');

在我的控制器功能(my_function)中,我收到如下:

$received = $this->input->post('url');
echo json_encode($received);

不幸的是,$this->input->post('url')给了我错误的信息。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

我认为是因为你的控制器的路径不正确

尝试使用site_url()

$.post('<?php echo site_url("xyz_controller/my_function") ?>', {url:"dummy data"}, 
function(data) {
    alert("Success!");
}, 'json');

答案 1 :(得分:0)

            $.ajax
    ({
        type    :   "POST", 
        async   :   false, 
        url     :   $phpURL,   
        data    :   "url="+$phpURL,
        success :   function(data)
        {
            var response = jQuery.parseJSON(data);

            console.log(response)
        },
        error: function()
        {
            alert("error occured");
            return false;
        }
    });

PHP代码:

$url = "";
$posted_data = $this->input->post();
if(isset($posted_data['url']))                  
{
  $url      = $posted_data['url'];
 }

 echo $url;