Codeigniter php: SQL 注入阻止

Codeigniter php: SQL injection prevent

我已经完成了一个应用程序,但是在开发过程中还没有检查 sql 注入,现在最后,我需要解决这个小问题。

这是我的代码,我怎样才能以最简单的方式解决这个问题以防止 sql 注入(是否有任何功能只是格式化我的用户名、密码参数,而不是更改我的代码)。

public function getArtistByUsernameByPassword($username, $password) {
    $query = $this->db->query("SELECT * FROM artists WHERE username = '$username' AND  password = ' $password'");
    if ($query->num_rows() > 0) {
        return $query->row_array();
    }
    return null;
}

提前致谢!

使用db->escape()db->escapestr()函数来避免sql注入...

使用 Codeigniter 的 query builder class

所以你的代码应该是这样的。

$query = $this->db->get_where('artists', array('username' => $username, 'password' => $password));