Php 代码点火器-Can';不要删除或修改数据库

Php 代码点火器-Can';不要删除或修改数据库,php,mysql,codeigniter,Php,Mysql,Codeigniter,这是我第一次使用codeigniter来构建网站,所以我对它很陌生。我有一个管理页面,视频可以被批准或删除,这两个功能都不起作用。当点击链接时,它只是加载页面,什么都没有发生,数据库中没有任何更改。我到这里试了一下: $this->db->delete('files',array('id'=>$id)) 它将url更改为我认为正确的内容:/profile/delete/29 我正在加载包含以下简单函数的模型: function delete($fileid){ //$this->d

这是我第一次使用codeigniter来构建网站,所以我对它很陌生。我有一个管理页面,视频可以被批准或删除,这两个功能都不起作用。当点击链接时,它只是加载页面,什么都没有发生,数据库中没有任何更改。我到这里试了一下:

$this->db->delete('files',array('id'=>$id))

它将url更改为我认为正确的内容:
/profile/delete/29

我正在加载包含以下简单函数的模型:

function delete($fileid){
    //$this->db->query("DELETE FROM files WHERE ID = '$fileid'");

    $this->db->delete('files', array('ID' => $fileid));
}
然后在我的控制器中运行:

function delete($id){
    //$this->db->query("DELETE FROM files WHERE ID=$id");

    $this->files->delete($id);

    redirect('profile');
}
谁能告诉我我做错了什么吗?

试试这样:

function delete($fileid){
    $this->db->where('ID', $fileid);
    $this->db->delete('files');
}



function delete($id){
   $this->load->model('files');

    $this->files->delete($id);

    redirect('profile');
}

如果您有任何错误,请写在注释中。

如果您使用的是Unix/Linux,则问题可能是区分大小写的行名。此外,没有$this->load->model('files');代码中的行。我正在将其加载到控制器顶部的
parent::\u construct()下。使用$this->db->affedted_rows();删除后:它将显示删除了多少行。您也可以使用$this->db->last_query();删除后,您可以知道已向DDBB启动了什么查询。谢谢您,这些查询非常有用。:)我在我的测试MVC上尝试了它们,它们很有效,但在我正在尝试的实际MVC上没有。我在delete函数中抛出了一些echo,没有显示任何内容,就好像它没有运行该函数一样。也许是某种代码冲突?我创建了一个测试控制器、模型和视图,它只包含了基本要素,并且工作正常。我复制了完全相同的代码(当然只是更改了表名),但它不起作用。我没有错。有什么方法可以对数据进行var_dump/echo/capture吗?@doomtysgti删除重定向并检查是否会显示错误!没有什么。不幸的是,同样的结果。检查ID(区分大小写),检查模型文件名是否正确,以及类的名称是否正确。因为,在这种形式下,它对我有效。所有这些都是正确的。我也有一个上传功能,在同一个控制器,它的工作刚刚好。我得把它拆开,反向调试。