PHP Classes
elePHPant
Icontem

CodeIgniter ReCaptcha Helper: CodeIgniter controller for ReCAPTCHA validation

Recommend this page to a friend!
  Info   View files Documentation   View files View files (7)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2016-03-27 (7 months ago) RSS 2.0 feedNot enough user ratingsTotal: 140 All time: 8,238 This week: 1,016Up
Version License PHP version Categories
ci-recaptcha 1.0.0GNU General Publi...5.3PHP 5, User Management, Libraries, Va..., S...
Description Author

This package is a CodeIgniter controller for ReCAPTCHA validation.

It extends the CodeIgniter base controller so it loads the ReCAPTCHA library and presents the user CAPTCHA validation fields in the current page as a widget.

It can also perform the user validation verification with the respective ReCAPTCHA response values.

The ReCAPTCHA keys can be configured in an external script.

Picture of Alessio Felicioni
  Performance   Level  
Name: Alessio Felicioni <contact>
Classes: 5 packages by
Country: Italy Italy
Innovation award
Innovation award
Nominee: 2x

Details

codeigniter-recaptcha

Latest Stable Version Total Downloads Latest Unstable Version License

Little package to get [recaptcha][5] working on [codeigniter][1]

prerequisites

Setup and obtain a key pair from [recaptcha admin console][6] for your project domain; both are required. The firs is used on captcha widget rendering, the second when checking response validity.

It's also important to check the URL endpoint to be used for remote validation; the information is available under server side integration step.

setup

Copy config/Recaptcha.php and libraries/Recaptcha.php under codeigniter project application folder.

Please note that default shipped configuration is using test keys, so you have to replace them in config/Recaptcha.php with the ones coming from completion of previous step (and better to disable allowed test keys). The rows to edit are the following:

$config['allowtestkeys'] = TRUE;
$config['profile_sitekey'] = '6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI';
$config['profile_secretkey'] = '6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe';

According to [documentation][3], config variables can be mapped to customize widget, like theme, size, etc.

A way to install via composer is allowed referencing packagist handle [afelicioni/codeigniter-recaptcha][7] like

{
	"require": {
		"afelicioni/codeigniter-recaptcha": "dev-master"
	}
}

in a custom composer.json and to be triggered by

composer install

At last, controllers/Recaptcha.php provides a direct usage example.

how to use

Functionality is split in two parts, for widget rendering and response verification.

First, be sure to load library

$this->load->library('recaptcha');

In controller, call widget to obtain outputable code for displaying widget. You can (it's optional!) pass an array as parameter to customize language, theme, size and so on.

$this->recaptcha->widget(array('hl'=>'fr','theme'=>'dark','size'=>'compact'));

To verify response, call verify and pass a string to perfor check for.

$checkme = $this->recaptcha->verify($this->input->post('g-recaptcha-response'));
if ($check) {
	echo 'hey, you look like a human!';
}

todo

Strict check for IP address

extra

by Alessio Felicioni | Github

[1]: http://www.codeigniter.com/ [2]: https://developers.google.com/recaptcha/ [3]: https://developers.google.com/recaptcha/docs/display [4]: https://developers.google.com/recaptcha/docs/verify [5]: https://developers.google.com/recaptcha/intro [6]: https://www.google.com/recaptcha/admin [7]: https://packagist.org/packages/afelicioni/codeigniter-recaptcha

  Files folder image Files  
File Role Description
Files folder imageconfig (1 file)
Files folder imagecontrollers (1 file)
Files folder imagelibraries (1 file)
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file GPL-v.2.0 Lic. License text
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file README.md Doc. Documentation

  Files folder image Files  /  config  
File Role Description
  Accessible without login Plain text file Recaptcha.php Conf. Configuration script

  Files folder image Files  /  controllers  
File Role Description
  Plain text file Recaptcha.php Class Class source

  Files folder image Files  /  libraries  
File Role Description
  Plain text file Recaptcha.php Class Class source

 Version Control Unique User Downloads Download Rankings  
 100%
Total:140
This week:0
All time:8,238
This week:1,016Up