🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.php
2 messages
2 total messages Started by jivanmukta Mon, 09 Jun 2014 12:24
captcha a codeigniter
#230446
Author: jivanmukta
Date: Mon, 09 Jun 2014 12:24
56 lines
2535 bytes
Ponieważ nie znalazłem biblioteki do captcha w klasach CodeIgnitera zdecydowałem się użyć securimage. Zrobiłem tak (jeszcze nie testowałem):

Plik libraries/Captcha.php zawiera:

<?php
require_once '../thiry_party/securimage/securimage.php';

class Captcha extends Securimage {

// zapamiętaj kod w sesji:
public function saveCodeInSession() {
	$_SESSION['captcha_code'] = $this->code;
}
	
// sprawdź czy poprawnie podano CAPTCHA:
public function validateCaptcha($input) {
	$this->code = $_SESSION['captcha_code'];
  	if (is_string($input) && $this->check($input)) {
		return TRUE;
	}
	$_SESSION['captcha_key_error'] = 'Napis nie pasuje. Spróbuj jeszcze raz.';
	return FALSE;
}

}

Widok zawiera:

	<td>
	Wpisz napis widoczny na obrazku (to jest weryfikacja):<br>
        <input type="text" name="captcha_key" maxlength="8" size="8" style="width: 8ex">
            <?php echo $_SESSION['captcha_key_error']; ?>
	</td>
	<td>
	<img src="captcha.php" alt="">
	</td>

Plik views/captcha.php zawiera:

<?php
session_start();

require_once '../libraries/Captcha.php';

$captcha = new Captcha;
$captcha->saveCodeInSession();
$captcha->show();

Kontroler zawiera:

		$this->load->view('captcha');
                ...
		if ($this->form_validation->run() != FALSE && $this->captcha->validateCaptcha($this->input->post('captcha_key'))) {
...

Proszę o uwagi, bo to moja pierwsza aplikacja w CI.
Re: captcha a codeigniter
#230447
Author: tusk, donald tusk
Date: Mon, 09 Jun 2014 12:39
60 lines
2577 bytes
W dniu 2014-06-09 14:24, jivanmukta@poczta.onet.pl pisze:
> Ponieważ nie znalazłem biblioteki do captcha w klasach CodeIgnitera zdecydowałem się użyć securimage. Zrobiłem tak (jeszcze nie testowałem):
>
> Plik libraries/Captcha.php zawiera:
>
> <?php
> require_once '../thiry_party/securimage/securimage.php';
>
> class Captcha extends Securimage {
>
> // zapamiętaj kod w sesji:
> public function saveCodeInSession() {
> 	$_SESSION['captcha_code'] = $this->code;
> }
> 	
> // sprawdź czy poprawnie podano CAPTCHA:
> public function validateCaptcha($input) {
> 	$this->code = $_SESSION['captcha_code'];
>    	if (is_string($input) && $this->check($input)) {
> 		return TRUE;
> 	}
> 	$_SESSION['captcha_key_error'] = 'Napis nie pasuje. Spróbuj jeszcze raz.';
> 	return FALSE;
> }
>
> }
>
> Widok zawiera:
>
> 	<td>
> 	Wpisz napis widoczny na obrazku (to jest weryfikacja):<br>
>          <input type="text" name="captcha_key" maxlength="8" size="8" style="width: 8ex">
>              <?php echo $_SESSION['captcha_key_error']; ?>
> 	</td>
> 	<td>
> 	<img src="captcha.php" alt="">
> 	</td>
>
> Plik views/captcha.php zawiera:
>
> <?php
> session_start();
>
> require_once '../libraries/Captcha.php';
>
> $captcha = new Captcha;
> $captcha->saveCodeInSession();
> $captcha->show();
>
> Kontroler zawiera:
>
> 		$this->load->view('captcha');
>                  ...
> 		if ($this->form_validation->run() != FALSE && $this->captcha->validateCaptcha($this->input->post('captcha_key'))) {
> ...
>
> Proszę o uwagi, bo to moja pierwsza aplikacja w CI.
>

nie wiem czy działa, ale cwane!
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads