CodeIgniter - 针对第二个数据库的表单验证

时间:2015-01-08 11:42:12

标签: php mysql codeigniter validation

我有2个数据库。我可以通过以下方式查询数据库A:

$this->db->query

和数据库B遵循:

$this->db_B->query

我希望form_validation库将其规则(如is_unqiue)定位到$ this-> db_B而不是$ this-db。我怎么能做到这一点?

1 个答案:

答案 0 :(得分:2)

查看Form_validation库@ / system / libraries。

Form_validation.php

public function is_unique($str, $field)
{
    list($table, $field)=explode('.', $field);
    $query = $this->CI->db->limit(1)->get_where($table, array($field => $str));

    return $query->num_rows() === 0;
}

您可以轻松地extend此类并覆盖is_unique方法以使用备用数据库配置集。 您也可以只更改数据库配置,以便$ this-> db指向正确的数据库配置。取决于您将来要做什么,以及您是否也在其他数据库上使用表单验证。