gpt4 book ai didi

php - CodeIgniter 配置文件中的自定义验证错误消息

转载 作者:可可西里 更新时间:2023-11-01 12:54:11 25 4
gpt4 key购买 nike

我是 CodeIgniter (v 3.0.0)(来自 CakePHP)的新手,我正在尝试将自定义验证错误消息设置为我的一个表单。我正在使用一个配置文件来存储我所有的验证规则,如 here 所解释的那样.这是我的application/config/form_validation.php文件:

<?php  if (!defined('BASEPATH')) exit('No direct script access allowed');

$config = array(
'appointments/signup' => array(
array(
'field' => 'admin[name]',
'label' => 'Name',
'rules' => 'required',
'errors' => array(
'required' => 'Please tell us your %s',
),
),
array(
'field' => 'admin[email]',
'label' => 'Email',
'rules' => 'required|valid_email|is_unique[users.email]',
'errors' => array(
'required' => 'Please enter your %s address',
'valid_email' => 'Please enter a valid email address',
'is_unique' => 'That email is already taken. Forgot your password?'
)
),
array(
'field' => 'admin[username]',
'label' => 'Username',
'rules' => 'required|min_length[4]|max_length[25]|is_unique[user_settings.username]',
'errors' => array(
'required' => 'Please choose a %s',
'min_length' => '%s must me at least 4 characters long',
'max_length' => '%s cannot exceen 25 characters',
'is_unique' => '%s is already taken :('
)
),
array(
'field' => 'admin[phone_number]',
'label' => 'Phone number',
'rules' => 'min_length[0]',
),
array(
'field' => 'admin[password]',
'label' => 'Password',
'rules' => 'required|min_length[8]',
'errors' => array(
'required' => 'Please choose a %s',
'min_length' => '%s must be at least 8 characters long'
)
),
array(
'field' => 'admin[passconf]',
'label' => 'Password',
'rules' => 'required|matches[admin[password]]',
'errors' => array(
'required' => 'Please re-type your %s',
'matches' => '%ss do not match'
)
),
array(
'field' => 'company[company_name]',
'label' => 'Organization\'s Name',
'rules' => 'required',
'errors' => array(
'required' => 'Please tell us your %s',
)
),
),
);

如您所见,我正在尝试使用 errors 设置自定义验证反馈数组,详见here .但我仍然看到全局默认 The <field name> field is required.消息。

有没有办法在配置文件中设置自定义验证消息,而无需编辑全局默认文件?

最佳答案

尝试更改数组中键的顺序,如下所示:

'appointments/signup' => array(
array(
'field' => 'admin[name]',
'label' => 'Name',
'errors' => array(
'required' => 'Please tell us your %s',
),
'rules' => 'required',
)

完全相同的问题发生在我身上,在对核心类进行一些调试之后,我觉得自己足够愚蠢来尝试这个。

看起来像个错误,但我没有进一步研究。

我使用的是 3.0.1 版。



更新

我错了,如果这发生在 v 3.0.0 上,则不会发生在 3.0.1 上。我上面描述的是我在我的数组中用括号犯了一个错误。

一切正常。

关于php - CodeIgniter 配置文件中的自定义验证错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29672999/

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