2013-07-30 5 views
0

Я хочу написать JavaScript и проверку php для reCAPTCHA В моем php у меня есть функция ниже, но я не работаю. Это не, возвращать сообщение errror если ввести неправильный код reCAPTCHA:Как проверить reCAPTCHA

function invalid($inputname,$error_message) 
{ 
    $this->js.='if (!invalid(formname.'.$inputname.',"'.$error_message.'")) return false;'; 
    if (isset($_POST[$inputname]) && strlen($_POST[$inputname]) - strlen(str_replace(' ','',$_POST[$inputname])) > $limit && $_POST[$inputname] != "") 
    { 
     $this -> error_message .= $error_message.'<br>'; 
    } 
} 

Я не хочу просто повторить послание, которое я хочу повторить сообщение на верхней части формы, как я сделал с моим другой валидатор с использованием:

Может ли кто-нибудь показать мне, как это сделать правильно в php и javascript?

Благодаря

+0

как вы проверяете reCAPTCHA? –

+0

@ Dagon Я использую учебник Google для него, но в этом он только выводит сообщение – Jessica

ответ

-3

Это

strlen($_POST[$inputname]) - strlen(str_replace(' ','',$_POST[$inputname])) > $limit 

будет ложным, предполагая, что $ предел есть что-то вроде 6. Должно быть просто

strlen(str_replace(' ','',$_POST[$inputname])) > $limit 

Скажем расшифрованы "бананы". strlen("bananas") - strlen("bananas") == 0.

Добавлено JavaScript не возвращает false в любой момент, поэтому он будет возвращать undefined если расшифрованы правильно, что может повлиять на ваш код в другом месте (особенно, если вы используете ===).

+0

, которое работает для php. Я обновил свой вопрос, чтобы показать, что я сделал для javascript. вы можете исправить меня, пожалуйста, спасибо. – Jessica

+0

его исправление кода сработало для php, поэтому, пожалуйста, снимите голосование. – Jessica

+0

Спасибо @AlexRuso. Я добавил к моему ответу о JS. –

2

the reCAPTCHA documentation. В нем четко указано правильное использование функции recaptcha_check_answer() (часть библиотеки PHP RECAPTCHA) для проверки решений.

Смежные вопросы