Jak zainstalować CAPTCHA na mojej stronie?

FAQ - zanim zapytasz.
Tutaj znajdziesz odpowiedzi na najczęściej zadawane pytania.
monk
Posty: 556
Rejestracja: 11 sty 2009, 12:14:57
Reputacja: 5
Płeć: Niewybrana
User Agent: Firefox Windows 1280x800

Jak zainstalować CAPTCHA na mojej stronie?

Postautor: monk » 12 lut 2009, 10:01:31

Jak dodać CAPTCHA SecurImage do mojego formularza?
Często zdarza się, że natrętne roboty lubią zaspamować nawet dodane przez nas do PHP-Fusion lub Joomla niestandardowe formularze. Tutaj opiszę jak zabezpieczyć się przed tego typu spamem za pomocą świetnego CAPTCHA SecurImage...
1. Pobierz najnowszą wersję SecurImage klikając TUTAJ.
2. Rozpakuj folder securimage, a później wrzuć go na twoje konto za pomocą FTP lub File Managera.
3. Dokonaj edycji pliku securimage_show.php, za linią:

CodeColon Select All Code

$img = new securimage(); 

dodaj kod:

CodeColon Select All Code

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); 

Będzie on odpowiedzialny za przykazanie przeglądarce każdorazowego pobierania nowej wersji obrazka z serwera, na wypadek gdyby wymyśliła sobie, aby tenże plik cachować.
4. Z folderu securimage możesz skasować pliki securimage_example.php i example_form.php
5. Teraz do swojego formularza dodaj dwa pola. Jedno odpowiedzialne za wyświetlanie obrazka:

CodeColon Select All Code

<img src="/securimage/securimage_show.php" id="image" align="absmiddle" /> 

Drugie zaś umożliwiające przepisanie kodu:

CodeColon Select All Code

<input type="text" name="code"> 

Jeśli używasz PHP-Fusion to powinno to wyglądać tak:

CodeColon Select All Code

<input type="text" name="code" class="textbox"> 

6. W kodzie odpowiedzialnym za sprawdzanie formularza dodaj:

CodeColon Select All Code

include("/var/www/virtual/nazwastrony.cba.pl/securimage/securimage.php");
$img = new Securimage();
$valid = $img->check($_POST['code']);
if ($valid == FALSE) {
  die('Kod z obrazka przepisany przez ciebie jest nieprawidłowy!');
  //Oczywiście tą metodę można rozwinąć...
} 

Gdzie zamiast: nazwastrony.cba.pl wpisz swój host.
To by było na tyle, jeśli ktoś ma problem typu 'pusta strona' proszę wkleić na początku swojego pliku kod:

CodeColon Select All Code

ini_set('display_errors', 1);
error_reporting(E_ALL); 

i błąd który się pojawi przedstawić mi w tym temacie...
cysioland
Posty: 206
Rejestracja: 14 lut 2009, 21:18:54
Reputacja: 1
Strona na CBA.pl: http://computer-planet.cba.pl
Lokalizacja: Krapkowice
Płeć: Mężczyzna
User Agent: Opera Windows 1024x768
Kontakt:

Re: Jak zainstalować CAPTCHA na mojej stronie?

Postautor: cysioland » 22 sie 2009, 21:56:10

Wszystko wygląda tak,jakby kod generował się na nowo przy wysłaniu,bo nawet,kiedy kod podam dobrze,to pokazuje,że kod jest niepoprawny.
Awatar użytkownika
fuma
Przyjaciel CBA
Posty: 11168
Rejestracja: 01 sie 2005, 14:57:56
Reputacja: 201
Lokalizacja: z jajka niespodzianki :P
Płeć: Mężczyzna
User Agent: Opera Windows 1440x900

Re: Jak zainstalować CAPTCHA na mojej stronie?

Postautor: fuma » 24 sie 2009, 18:35:26

pewnie cos zle implementujesz lub modyfikujesz, bo jak nietrudno zauwazyc, monk opisal sposob modyfikacji tego skryptu a nie jak to zainstalowac.
kojak
Posty: 1
Rejestracja: 13 sty 2010, 12:07:49
Reputacja: 0
Strona na CBA.pl: versatel.cba.pl
Płeć: Niewybrana
User Agent: Firefox Windows 1152x864

Re: Jak zainstalować CAPTCHA na mojej stronie?

Postautor: kojak » 13 sty 2010, 15:32:15

Mi się wyświetla taki kod na stronie po wprowadzeniu kodu php na strone :

CodeColon Select All Code

Notice: Undefined index: captcha_code in /var/www/virtual/nazwastrony.cba.pl/index.php on line 44
Kod z obrazka przepisany przez ciebie jest nieprawidłowy
! 



Osadziłem taki kod na stronie :

CodeColon Select All Code


<?php


include("/var/www/virtual/nazwastrony.cba.pl/securimage/securimage.php");
$securimage = new Securimage();
$img = new Securimage();
$valid = $img->check($_POST['captcha_code']);
if ($valid == FALSE) {
  die('Kod z obrazka przepisany przez ciebie jest nieprawidłowy!');
  //Oczywiście tą metodę można rozwinąć...
} 
?>
    


Sprawdziłem każdą zmienną jest przypisana dobrze WTF ?

---- EDIT ----

Dobra już działa :D
Awatar użytkownika
sami23890
Posty: 1
Rejestracja: 25 lip 2016, 23:34:26
Reputacja: 0
Strona na CBA.pl: graj-i-zdobywaj.y0.pl
Płeć: Mężczyzna
User Agent: Firefox Windows 1600x900
Kontakt:

Jak zainstalować CAPTCHA na mojej stronie?

Postautor: sami23890 » 26 lip 2016, 15:23:23

błąd:
Fatal error: Class 'Securimage' not found in /profiles/s/sa/sam/sami23890/graj-i-zdobywaj.y0.pl/rejestracja.php on line 98

Wróć do „FAQ”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość