Php CodeIgniter Ajax空错误

Php CodeIgniter Ajax空错误,php,ajax,codeigniter,Php,Ajax,Codeigniter,嗨,伙计们。我是Ajax新手,所以我遇到了一个问题。当我按下假定的链接使用Ajax时,它会显示一条错误消息,错误参数为空。我该怎么办 我已经尝试使用base_url而不是site_url,但是没有用。点击功能的结构还可以,我已经测试过了 谢谢 view.php 当您发出AJAX请求时,它是指向一个URL的。就像在浏览器中手动加载URL一样 URLusuario\u model/get\u all\u表不是正确的URL。在CodeIgniter中,您不能直接调用模型。您需要调用一个控制器,并让该控

嗨,伙计们。我是Ajax新手,所以我遇到了一个问题。当我按下假定的链接使用Ajax时,它会显示一条错误消息,错误参数为空。我该怎么办

我已经尝试使用base_url而不是site_url,但是没有用。点击功能的结构还可以,我已经测试过了

谢谢

view.php
当您发出AJAX请求时,它是指向一个URL的。就像在浏览器中手动加载URL一样


URL
usuario\u model/get\u all\u表
不是正确的URL。在CodeIgniter中,您不能直接调用模型。您需要调用一个控制器,并让该控制器调用模型。

当您发出AJAX请求时,它指向一个URL。就像在浏览器中手动加载URL一样


URL
usuario\u model/get\u all\u表
不是正确的URL。在CodeIgniter中,您不能直接调用模型。您需要调用控制器,并让该控制器调用模型。

状态+\n中的错误行附近也有语法错误:

  error: function (x, status, error) {alert("An error occurred: " + status +  \nError: " + error); }
这应该如下所示

$('#ntop').click(function(){
 $.ajax({
     url: '<?php echo site_url("usuario_model/get_all_table");?>',
     type:'POST',
     dataType: 'json',
     success: function(output_string){ alert("Here!"); },
     error: function (x, status, error) {alert("An error occurred: " + status +"  \nError: " + error); }
 });
});

status+\n中的错误行附近也有语法错误:

  error: function (x, status, error) {alert("An error occurred: " + status +  \nError: " + error); }
这应该如下所示

$('#ntop').click(function(){
 $.ajax({
     url: '<?php echo site_url("usuario_model/get_all_table");?>',
     type:'POST',
     dataType: 'json',
     success: function(output_string){ alert("Here!"); },
     error: function (x, status, error) {alert("An error occurred: " + status +"  \nError: " + error); }
 });
});
用这个

<script>
    $('#ntop').click(function(){
        $.ajax({    
            url: '<?php echo base_url()."CONTROLLER_NAME/function_name/Parameters";?>',
            type:'POST',
            dataType: 'json',
            success: function(output_string){ alert(output_string); },
            error: function (x, status, error) {alert("An error occurred: "+status+"Error: "+error); }
        });
    }); 
</script>
用这个

<script>
    $('#ntop').click(function(){
        $.ajax({    
            url: '<?php echo base_url()."CONTROLLER_NAME/function_name/Parameters";?>',
            type:'POST',
            dataType: 'json',
            success: function(output_string){ alert(output_string); },
            error: function (x, status, error) {alert("An error occurred: "+status+"Error: "+error); }
        });
    }); 
</script>


那么,我应该在控制器中创建一个函数,只回显我想显示的数据?@LucasHarada:是的,没错:-)我试过你的方法。但空错误仍在返回。我现在将把代码编辑成它的样子。@LucasHarada:Your
get\u all\u table
方法需要
echo
一些东西。谢谢,巴德。我在控制器的方法中包含了
echo json\u encode(output\u string)
,但问题仍然存在。问题出在
json\u encode
上。我修复了从ajax调用中删除
数据类型:“json”
的问题。因此,我应该在控制器中创建一个函数,只回显我要显示的数据?@LucasHarada:是的,准确地说:-)我尝试了你的方法。但空错误仍在返回。我现在将把代码编辑成它的样子。@LucasHarada:Your
get\u all\u table
方法需要
echo
一些东西。谢谢,巴德。我在控制器的方法中包含了
echo json\u encode(output\u string)
,但问题仍然存在。问题出在
json\u encode
上。我修复了从ajax调用中删除
数据类型:“json”
的问题。请注意,如果启用了CSRF保护,则还需要将CSRF哈希与ajax请求的其余部分一起发送,否则它将无法工作。@VivekGhaisas您能解释一下如何执行吗?当然。在post数据中,您需要添加一个字段。对我来说,我的CSRF字段的名称是
CSRF\u test\u name
,它的值存储在属性字段中。使用jQuery,我提取了它:
csrf\u code=$('input[name=csrf\u test\u name')).attr('value')$http://someaddress.com/“,{id:$(this.attr('id'),csrf_test_name:csrf_code})
;请注意,如果您启用了CSRF保护,则还需要将CSRF哈希与AJAX请求的其余部分一起发送,否则它将不起作用。@VivekGhaisas您可以解释一下如何执行吗?当然可以。在post数据中,您需要添加一个字段。对我来说,我的CSRF字段的名称是
CSRF\u test\u name
,它的值存储在属性字段中。使用jQuery,我提取了它:
csrf\u code=$('input[name=csrf\u test\u name')).attr('value')$http://someaddress.com/“,{id:$(this.attr('id'),csrf_test_name:csrf_code})
;对不起,@dianuj。我复制错误,忘记在“\n错误:”前面加引号。我试图像那样使用url,但空错误不断出现。对不起,@dianuj。我复制错误,忘记在“\n错误:”前面加引号。我试图像那样使用url,但空错误不断出现。
function __construct()
    {
        parent::__construct();
        $this->load->model('MODEL_NAME');

    }
function you_want_to_execute_troughh_ajax($Parameters)
{
$result = $this->MODEL_NAME->FUNCTION_OF_MODEL($parameters_needed);   
echo $result;

}