0

我从 codecanyon 购买了 Quform wordpress 插件。插件很棒 - 它允许您为表单创建自定义验证器,如下所示http://support.themecatcher.net/quform-wordpress/guides/customization/creating-a-custom-validator

然而,上面的示例仅处理针对单个值的验证。如果我有 500 个呢?

这是我拥有的代码。

function custom_validator($valid, $value, $element, $rcnumber)
{
    $rcnumber = array('103184','104351','104359','103912','104389','104400','100505','102180','103530','104455','79162','74233','26451','75140','289752','101785','103141','26646','103178','100567','75159','103744','103244','78557','103330','102602'<500 numbers....>,);

    if ($value != $rcnumber) {
        $element->addError('Invalid RC Number');
        $valid = false;
    }
    return $valid;
}
add_filter('iphorm_element_valid_iphorm_14_11', 'custom_validator', 10, 3);

这段代码的问题是,无论我在 rcnumber 字段中输入什么值,即使 rcnubmer 数组中列出的 500 个中的数字是,我也会不断收到“无效的 RC 号码”错误。我究竟做错了什么?谢谢!

4

1 回答 1

0

不确定你想在这里得到什么,但看起来你想检查一个值是否存在于数组中。

尝试这个:

if (!in_array($value, $rcnumber))

代替:

if ($value != $rcnumber)

in_array 函数将在数组中查找一个值,您当前的代码检查 $value 是否与给定数组不同。

于 2013-10-16T20:12:16.397 回答