admin管理员组文章数量:1426943
I'm attempting to validate a field to ensure it is 9 numerical digits (Canadian SIN number format). I've got the below filter set up:
add_filter( 'gform_field_validation_1_1', 'validate_SIN', 10, 4 );
function validate_SIN( $result, $value, $form, $field ) {
$pattern = "^\d{3}-?\d{3}-?\d{3}$";
if ( !preg_match( $pattern, $value ) ) {
$result['is_valid'] = false;
$result['message'] = 'value:'.$value.' pattern:'.$pattern.' No Pattern Match';
}
return $result;
}
Invalid entries fail validation, but valid entries ALSO fail validation. I know the Regex is fine because I've used it before, so I'm at a loss as to why it's not working.
Does anyone have any guidance?
I'm attempting to validate a field to ensure it is 9 numerical digits (Canadian SIN number format). I've got the below filter set up:
add_filter( 'gform_field_validation_1_1', 'validate_SIN', 10, 4 );
function validate_SIN( $result, $value, $form, $field ) {
$pattern = "^\d{3}-?\d{3}-?\d{3}$";
if ( !preg_match( $pattern, $value ) ) {
$result['is_valid'] = false;
$result['message'] = 'value:'.$value.' pattern:'.$pattern.' No Pattern Match';
}
return $result;
}
Invalid entries fail validation, but valid entries ALSO fail validation. I know the Regex is fine because I've used it before, so I'm at a loss as to why it's not working.
Does anyone have any guidance?
Share Improve this question edited May 25, 2019 at 23:06 fuxia♦ 107k39 gold badges255 silver badges459 bronze badges asked May 25, 2019 at 22:54 r3lair3lai 33 bronze badges1 Answer
Reset to default 1Probably you just forgot the delimiters for your pattern.
Try declaring your $pattern
like:
$pattern = "/^\d{3}-?\d{3}-?\d{3}$/";
本文标签: Gravity Forms and regexDoesn39t seem to validate
版权声明:本文标题:Gravity Forms and regex - Doesn't seem to validate 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745463960a2659449.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论