summaryrefslogtreecommitdiffstats
path: root/system/helpers
diff options
context:
space:
mode:
Diffstat (limited to 'system/helpers')
-rw-r--r--system/helpers/form_helper.php13
1 files changed, 6 insertions, 7 deletions
diff --git a/system/helpers/form_helper.php b/system/helpers/form_helper.php
index fd9e7be7c..2002d4269 100644
--- a/system/helpers/form_helper.php
+++ b/system/helpers/form_helper.php
@@ -641,14 +641,13 @@ if ( ! function_exists('set_value'))
*/
function set_value($field = '', $default = '', $is_textarea = FALSE)
{
- if (FALSE === ($OBJ =& _get_validation_object()))
- {
- return isset($_POST[$field])
- ? form_prep($_POST[$field], $is_textarea)
- : form_prep($default, $is_textarea);
- }
+ $CI =& get_instance();
+
+ $value = (isset($CI->form_validation) && is_object($CI->form_validation) && $CI->form_validation->has_rule($field))
+ ? $CI->form_validation->set_value($field, $default)
+ : $CI->input->post($field, FALSE);
- return form_prep($OBJ->set_value($field, $default), $is_textarea);
+ return form_prep($value === NULL ? $default : $value, $is_textarea);
}
}