我正在设置一个与 WordPress 联系表单 7 插件结合使用的自定义 php 表单验证,我已将验证规则设置为文本字段,我只希望人们输入 1 个单词(即没有空格)并且该单词以字母 s
开头。
字母 s
验证工作得很好,但是虽然有效,但无空格(一个单词)验证似乎不起作用?
php:
if($name == 'FirstField') {
$FirstField = $_POST['FirstField'];
if($FirstField != '') {
if (!preg_match("/(^[^s]|\s)/i",$FirstField)){
$result['valid'] = true;
} else {
$result['valid'] = false;
$result['reason'][$name] = 'Invalid Entry.';
}
}
}
如有任何建议,我们将不胜感激!
最佳答案
测试:
if($name == 'FirstField') { $FirstField = $_POST['FirstField'];
if($FirstField != '') { if (!preg_match("/(^[^s]|\+s)/i",$FirstField)){ $result['valid'] = true; } else { $result['valid'] = false; $result['reason'][$name] = 'Invalid Entry.'; } } }
更新:
if($name == 'FirstField') { $FirstField = $_POST['FirstField']; if($FirstField != '' && isset($FirstField) ) { $FirstField = explode(' ', $FirstField); //Get only first word if (!preg_match("/(^[^s]|\+s)/i",$FirstField[0])){ $result['valid'] = true; } else { $result['valid'] = false; $result['reason'][$name] = 'Invalid Entry.'; } } }
最后修复错误:
替换:
if($FirstField != '' && isset($FirstField)
作者:
if($FirstField != '' && isset($FirstField) )
希望对你有帮助。
关于PHP验证: no spaces in string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20691296/