javascript - AJAX 错误状态代码 500 内部服务器错误

标签 javascript php jquery ajax codeigniter

我有这个代码:

<a href="#">
    <i class="icon-heart" id="icon_heart" value="20"></i>
</a>
var some_value = $("#icon_heart").attr("value"); 

$('[id=id_heart]').click(function() {
    $.ajax({
        url: "<?=base_url(); ?>controller/save",
        type: "post",
        data: { some_value: some_value },
        success: function(dat){
            alert(dat);
        },
        error: function (xhr, ajaxOptions, thrownError) {
            alert(xhr.status);
            alert(thrownError);
        }
    });
});

PHP:

function save()
{
    $post = $this->input->post();
    $some_value = $post['some_value'];

    $dtl['some_field']  = $some_value;
    $dtl['date_insert'] = date('Y-m-d H:m:s');
    $this->db->insert('resep_like',array_filter($dtl));

    $this->db->set('is_like', 'is_like+1',FALSE);
    $this->db->where('some_field', $some_value);
    $this->db->update('some_table');

    echo "success";
}

插入和更新查询成功,但 AJAX 响应返回错误:状态代码 500 内部服务器错误。为什么会这样呢?成功了,但是结果出错,并且没有显示 PHP 的 echo 。如果响应成功但 AJAX response 显示错误,我该如何处理响应

最佳答案

不知道这是否是最佳答案..

我只是通过更改 url: <?=base_url();?>controller/save 来解决这个问题至url: <?=base_url();?>save.php

我点url我的 ajax 到放置在文档根目录中的单个 php 文件,并且不再使用 ci Controller 来执行插入和更新查询,然后瞧它的工作

如果有更好的方法,请告诉我。

谢谢

关于javascript - AJAX 错误状态代码 500 内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29253502/

相关文章:

javascript - 单击对象中最后一张图像之后的图像时,如何切换图像?

php - 如何在 Laravel 中使用 jquery 将数据传递给路由

javascript - 如何查看表单元素是否未发布

javascript - 在没有网络服务器的 html 页面上显示来自 csv-datei 的信息

javascript - 新的网络打印解决方案

javascript - 在具有相同类的许多 div 中更改特定 div onClick 的类

jquery - CSS3/jQuery 选择器通过 :nt-child() selector 设置 2 行组的样式

php - 根据数组值设置复选框选中状态

jquery - 在某个 div 处停止滚动

javascript - 如何获取行数作为JQuery变量