2013-04-10 31 views
2

看起來功能edit_unique被描述爲here - Validating Uniqueness In CodeIgniter When Updating A Record,它會殺死set_value函數。Codeigniter - 使用edit_unique編輯表單(重新填充)

一切工作正常,這是這樣的......

echo form_input('username', set_value('username',$user->username)); 

但使用edit_unique驗證時,該值是在提交表單後空。後期變量是可以的,驗證也沒有錯誤 - 但值沒有設置。

任何想法如何解決這個問題?

回答

6

好的 - 自己找到了。如果真的沒有回報價值。也許任何人都面臨着同樣的問題......這個功能,它的工作原理:

function edit_unique($value, $params) { 
    $CI =& get_instance(); 
    $CI->load->database(); 

    $CI->form_validation->set_message('edit_unique', "Sorry, that %s is already being used."); 

    list($table, $field, $current_id) = explode(".", $params); 

    $query = $CI->db->select()->from($table)->where($field, $value)->limit(1)->get(); 

    if ($query->row() && $query->row()->id != $current_id) 
    { 
     return FALSE; 
    } else { 
     return TRUE; 
    } 
} 
+0

'edit_unique'使用中可以找到[這個答案](http://stackoverflow.com/a/23779434/1179841) – Sithu 2016-07-14 09:41:42

相關問題