Codeigniter Ajax-无法工作获取网络错误



我是CI的新手。

我尝试制作一个ajax进程。但我得到了以下错误。

NetworkError:500内部服务器错误-您请求的操作是不允许的

这是我的代码

 <script type="text/javascript">
    $(document).ready(function() {
       $('#submit').click(function() {
            var form_data = {
            comment : $('#comment').val(),
            ajax : '1'
       };
       $.ajax({
          url: "<?php echo $this->config->item('base_url'); ?>comment/insert",
          type: 'POST',
          async : false,
          data: form_data,
          success: function(msg) {
           $('#emsg').html(msg);
          }
       });
      return false;
   });
 });
 </script>
 But when i access the url directly 
 <?php echo $this->config->item('base_url'); ?>comment/insert

它工作正常。

所以请帮我解决这个问题。

感谢所有

这里有几件事:

如果要使用base_url,则无需将其分配给或从配置数组访问它。它可以作为base_url()提供给您。和site_url()一样。请在URL帮助程序上查看CodeIgniter的文档。

话虽如此,我建议您不要在hrefsrc中使用site_url()base_url()函数,除非一次

在HTML文档的<head>中,使用<base>标记。如果您编写:<base href="<?= site_url();?>">,则可以简单地使用:controller/function引用所有控制器和函数。不需要一直调用site_url()base_url(),因为<base>为文档中包含的所有相对URL指定了一个基本URL。

接下来,如果您收到500个内部服务器错误,请确保启用了PHP错误报告。在控制器的构造函数中,调用error_reporting(E_ALL);。现在,当出现错误时,请使用Chrome开发工具检查服务器的响应;激发ajax请求并进入开发工具的"网络"选项卡。找到Ajax POST,单击它,您将能够检查服务器的响应。

这个问题是由以下原因引起的

  1. 合成器误差
  2. 控制器或模型中的重复功能

相关内容

  • 没有找到相关文章