如何在recaptcha中清理和验证$_POST['g-recaptcha-response']
https://github.com/google/recaptcha/blob/master/examples/example-captcha.php#L72
看起来它提供了一长串字母数字字符_
和-
那么使用strip_tags()
进行清理并检查它是否只有字母数字字符,_
和-
来验证是否足够?
答案 0 :(得分:1)
您可以使用strip_tags
,但这不会确保没有其他字符发送,例如@, #, ...
。一种解决方案是使用preg_match
来验证您收到的字符串:
if (!preg_match('/^[\w-]*$/', $_POST['g-recaptcha-response'])) {
echo 'invalid captcha';
}