gpt4 book ai didi

php - Codeigniter 3 表单验证回调不起作用

转载 作者:行者123 更新时间:2023-12-04 23:33:07 26 4
gpt4 key购买 nike

我的 codeigniter 验证中有一个没有被调用的自定义回调,我只是不知道错误在哪里。

这是我的 Controller :

$this->form_validation->set_error_delimiters('', '');
$this->form_validation->set_rules('pedido', 'numero de pedido', 'trim|required|integer');
$this->form_validation->set_rules('cliente', 'nombre del cliente', 'trim|required|alpha_numeric_spaces');
$this->form_validation->set_rules('motivo', 'motivo de la devolucion', 'trim|required|alpha_numeric_spaces');
$this->form_validation->set_rules('imagen', 'imagen', 'callback_handle_upload');

if ($this->form_validation->run() == FALSE) {
$error_array = array(
'pedido' => form_error('pedido'),
'cliente' => form_error('cliente'),
'motivo' => form_error('motivo'),
'imagen' => form_error('imagen')
);

$this->session->set_userdata('notify', $error_array);
redirect('garantias-y-devoluciones');
die();
}

这是我的回调函数
public function handle_upload($str)
{
$this->form_validation->set_message('imagen', 'The {field} has an error.');
return FALSE;
}

它应该触发错误,但不是。

最佳答案

解决了。​​!如果有人遇到同样的错误,这就是我解决它的方法,这是 HMVC 的一个错误,“在将当前 Controller 作为 $CI 变量分配给 form_validation 库之前。这将使您的回调方法正常运行。”

只需添加 public $CI在你 MY_Form_validation

然后在您的 Controller 构造函数上:

$this->load->library('form_validation');
$this->form_validation->CI =& $this;

更多信息请访问以下页面: https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc

关于php - Codeigniter 3 表单验证回调不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33618499/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com