具有自动增量 id 的代码点火器查询即使 id 错误也返回 true



所以最近我正在用Codeigniter制作一个简单的CRUD应用程序。

我的表具有 id 字段,该字段是自动增量字段。 我的模型有一个名为getById的函数。

public function getById($id){
return $this->db->get_where($this->_table,["id" => $id])->row();
}

在我的表中,我有 1 个 ID 为 1 的字段。

如果我尝试使用错误的 ID 进行查询,它将返回空。

但是,当我尝试输入类似 1 的东西后跟类似字符串时

1测试

它确实在我的数据库中返回了 ID 为 1 的字段。我不知道这是应该的还是错误。

当然,Codeigniter 正在将您的字符串转换为整数。

PHP intval(( 手册 说: 字符串很可能会返回 0,尽管这取决于字符串最左侧的字符。整数转换的常见规则适用。

因此,如果您需要对无效条目抛出错误,则必须首先验证它们,也许使用 is_int(( 只允许整数类型或 is_numeric(( 允许仅包含数字的字符串。

相关内容

  • 没有找到相关文章

最新更新