fizzka/phalcon-recaptcha

Simple wrapper for google recaptcha for phalcon

0.1.2 2015-04-17 21:30 UTC

This package is auto-updated.

Last update: 2024-12-19 13:33:37 UTC


README

About

This is small component to provide Google Recaptcha functionality in Phalcon.

It uses phalcon DI. Be sure, you supply DI this correct recaptcha configuration.

Installation

Feel free to fork, clone this repo, or install via composer:

composer require fizzka/phalcon-recaptcha

Usage

There are 3 easy steps:

Step 1

Setup up config & di (or ensure, you did this at application bootstrap ;) :

$config = new Phalcon\Config(array(
	"recaptcha" => array(
		'publicKey' => '[...your pub key goes here...]',
		'secretKey' => '[...your priv key goes here...]',
		'jsApiUrl' => 'https://www.google.com/recaptcha/api.js',
		'verifyUrl' => 'https://www.google.com/recaptcha/api/siteverify',
	)
));

$di = new Phalcon\DI\FactoryDefault();
$di->set('config', $config);

Step 2

Create form and add recaptcha on it:

$form = new Phalcon\Forms\Form;
$form->setDI($di);

$recaptcha = new Fizz\Phalcon\Recaptcha('recaptcha');
$recaptcha->addValidator(new Fizz\Phalcon\RecaptchaValidator(array(
	'message' => "Are you human? (custom message)"
)));

$form->add($recaptcha);

Step 3

Validate form after submission:

//submitted data, ex
$post = array(
	'g_recaptcha_response' => 'abzfoobar'
);

if ($form->isValid($post)) {
	echo 'ok';
} else {
	print_r($form->getMessages());
}

Code example

Full-working example @see example.php

License

MIT