Jak zainstalować CAPTCHA na mojej stronie?

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

Jak zainstalować CAPTCHA na mojej stronie?

Post autor: monk »

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ą:

Kod: Zaznacz cały

$img = new securimage(); 
dodaj kod:

Kod: Zaznacz cały

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:

Kod: Zaznacz cały

<img src="/securimage/securimage_show.php" id="image" align="absmiddle" /> 
Drugie zaś umożliwiające przepisanie kodu:

Kod: Zaznacz cały

<input type="text" name="code"> 
Jeśli używasz PHP-Fusion to powinno to wyglądać tak:

Kod: Zaznacz cały

<input type="text" name="code" class="textbox"> 
6. W kodzie odpowiedzialnym za sprawdzanie formularza dodaj:

Kod: Zaznacz cały

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:

Kod: Zaznacz cały

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
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?

Post autor: cysioland »

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
Lokalizacja: z jajka niespodzianki :P
Płeć: Mężczyzna
User Agent: Opera Windows 1440x900

Re: Jak zainstalować CAPTCHA na mojej stronie?

Post autor: fuma »

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
Strona na CBA.pl: versatel.cba.pl
Płeć: Niewybrana
User Agent: Firefox Windows 1152x864

Re: Jak zainstalować CAPTCHA na mojej stronie?

Post autor: kojak »

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

Kod: Zaznacz cały

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 :

Kod: Zaznacz cały

<?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
sami23890
Posty: 1
Rejestracja: 25 lip 2016, 23:34:26
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?

Post autor: sami23890 »

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