Php 数字域上的重力表单验证
重力表单电话号码字段应验证电话号码,但如果字段选项设置为“国际”,则如果字段中的数据为标准字符,则表单将提交 下面的代码钩住了我的表单和特定字段,但我在如何检查字段字符串是否是数字方面遇到了问题Php 数字域上的重力表单验证,php,wordpress,forms,gravity-forms-plugin,Php,Wordpress,Forms,Gravity Forms Plugin,重力表单电话号码字段应验证电话号码,但如果字段选项设置为“国际”,则如果字段中的数据为标准字符,则表单将提交 下面的代码钩住了我的表单和特定字段,但我在如何检查字段字符串是否是数字方面遇到了问题 // add custom validation to the gravity forms plugin to validate "phone number" field add_filter("gform_field_validation_2_4", "custom_validation", 10,
// add custom validation to the gravity forms plugin to validate "phone number" field
add_filter("gform_field_validation_2_4", "custom_validation", 10, 4);
function custom_validation($result, $value, $form, $field){
if($result["is_valid"] && intval($value)){
$result["is_valid"] = false;
$result["message"] = "Please enter a valid telephone number";
}
return $result;
}
我将感谢您的建议和反馈
谢谢,
JB.为什么不尝试使用正则表达式呢?它对这种情况非常有效。例如(未经测试):
// add custom validation to the gravity forms plugin to validate "phone number" field
add_filter("gform_field_validation_2_4", "custom_validation", 10, 4);
function custom_validation($result, $value, $form, $field){
if(!preg_match('~^\d+$~', $value)){
$result["is_valid"] = false;
$result["message"] = "Please enter a valid telephone number";
}
return $result;
}