我創建了一個「回調」函數來檢查用戶名是否存在於數據庫中。 我有「用戶名」字段的多個規則,但唯一的工作是我的回調函數。它拒絕檢查其他規則。我試圖讓該字段爲空,而 「必需的」 規則從來沒有踢使用自定義回調函數進行表單驗證
控制器:
account.php
function register() {
$this->load->library('validation');
$fields['username'] = "trim|required|callback_username_check";
etc ...
etc ...
$this->validation->set_rules($fields);
if ($this->validation->run()) {
$records = array();
$records['username'] = $this->validation->username;
etc ...
etc ...
$data = $this->account_model->registerNewAccount($records);
}
$this->load->view('register_view');
}
function username_check($username) {
$m = new Mongo();
$collection = $m->selectDB(DBNAME)->selectCollection(TABLE);
$data = $collection->count(array("username" => $username));
if($data == 1) {
$this->validation->set_message('username_check', '%s is already taken!');
return false;
} else {
return true;
}
}
我想知道那是什麼!此外,我的一些問題沒有得到很好的答案。此外,從什麼時候開始變成一場人氣比賽呢? – luckytaxi
我認爲它給了用戶一些時間回答問題的動力。 –