Làm cách nào để đặt Google CAPTCHA trong HTML?

Một trong những vấn đề lớn mà chúng tôi gặp phải trên các trang web của mình là việc các “bot” sử dụng các biểu mẫu để phát tán “thư rác” và điều đó dẫn đến việc sử dụng quá nhiều tài nguyên máy chủ của chúng tôi, chẳng hạn như CPU ​​và bộ nhớ.

Về cơ bản, quy trình này là kết quả của các thuật toán xác định các dạng trang web của chúng tôi (ví dụ: liên hệ) và bắt đầu gửi thông tin trong đó quá nhiều và tự động. Với điều này, việc tạo ra "thư rác" cuối cùng trở thành một vấn đề đối với các dịch vụ email của chúng tôi hoặc thậm chí đối với cơ sở dữ liệu của ứng dụng của chúng tôi

Một cách để bảo vệ trang web của chúng tôi (các biểu mẫu của chúng tôi) khỏi những robot này là triển khai xác minh loại “hình ảnh xác thực”, trong đó một trường được thêm vào có thể xác minh xem người dùng có thực sự là con người hay không

Vậy thì. Trong bài đăng này, tôi sẽ chỉ cho bạn cách sử dụng “reCAPTCHA” của Google (https. //Google. com/recaptcha/admin) trong trang web của bạn và do đó tránh được sự tích tụ “thư rác”

Bước đầu tiên là xác thực bằng tài khoản Google của bạn và truy cập vào địa chỉ. https. //Google. com/recaptcha/quản trị viên

Làm cách nào để đặt Google CAPTCHA trong HTML?
Hình ảnh 1. Mẫu reCAPTCHA đăng ký trang web mới

Trên trang này, chúng tôi sẽ thêm một trang web mới. Trong trường “Nhãn”, bạn xác định tên mình muốn, để nhớ tốt hơn nếu bạn có nhiều “recaptchas” cho nhiều trang khác nhau. Tôi đặt tên miền chính nó

Trong “Loại reCAPTCHA”, bạn có một số tùy chọn. Trong trường hợp của tôi, tôi đã chọn tùy chọn “reCAPTCHA v2” và sau đó là tùy chọn phụ “Hộp kiểm 'Tôi không phải là người máy'”

Trong “Chủ sở hữu” sẽ xuất hiện email của bạn và nếu muốn, bạn có thể thêm các địa chỉ khác của những người có thể giám sát và quản lý reCAPTCHA này

Khi đã xong, hãy “chấp nhận các điều khoản dịch vụ của reCAPTCHA” và sau đó nhấp vào “Gửi“

Trên trang tiếp theo, 2 khóa sẽ được tạo

Làm cách nào để đặt Google CAPTCHA trong HTML?
Hình ảnh 2. Khóa trang web reCAPTCHA và Khóa bí mật

Điều quan trọng là bạn sao chép 2 khóa đã được tạo này (khóa trang web và khóa bí mật). Chúng tôi sẽ sử dụng cái đầu tiên để tạo trường “Tôi không phải là người máy” trong biểu mẫu của chúng tôi và cái thứ hai chúng tôi sẽ sử dụng để xác thực xác minh bất cứ khi nào biểu mẫu của chúng tôi được gửi

Trên trang web của chúng tôi bây giờ, điều đầu tiên chúng tôi phải làm là thêm tệp “javascript” sẽ giúp chúng tôi chèn và xác thực hình ảnh xác thực. Trước khi đóng thẻ “head” của trang chứa biểu mẫu, hãy đặt đoạn mã sau

<script src='https://www.google.com/recaptcha/api.js'></script>

Bây giờ, hãy chuyển đến biểu mẫu mà chúng tôi muốn chèn reCAPTCHA

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
    <head>
        <title>reCAPTCHA</title>
        <script src='https://www.google.com/recaptcha/api.js'></script>
    </head>
    <body>
    	<form method="post" action="verify.php">
        	<label>Nome:</label><input type="text" name="nome" /><br />
        	<label>Email:</label><input type="email" name="email" /><br />
        	<div class="g-recaptcha" data-sitekey="PASTE-YOUR-SITE_KEY-HERE"></div>        	<button type="submit">Enviar</button>
        </form>
    </body>
</html>

reCAPTCHA

Tên.

<

Thấy rằng ở dòng 10, tôi đặt div “g-recaptcha” và trong thuộc tính “data-sitekey”, chúng ta nên chèn chính xác khóa trang web mà chúng ta đã sao chép từ bảng điều khiển reCAPTCHA của Google. (GHI CHÚ. "Hành động" của biểu mẫu này gửi thông tin đến xác minh. php và do đó, trong tệp này tôi sẽ xác minh xem reCAPTCHA có được tương tác chính xác hay không)

Chạy trang, chúng ta có thể thấy rằng reCAPTCHA được hiển thị

Làm cách nào để đặt Google CAPTCHA trong HTML?
Hình ảnh 3. Chèn trường “Tôi không phải là người máy” vào biểu mẫu của chúng tôi

Bây giờ, trong xác minh. php, hãy kiểm tra xem mọi thứ có ổn không với reCAPTCHA. Để làm điều này, chúng tôi sẽ truy xuất thông tin “g-recaptcha-response“, được gửi qua POST cùng với dữ liệu biểu mẫu khác

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

 
$captcha = isset($_POST['g-recaptcha-response']) ? $_POST['g-recaptcha-response'] : null;
 
if(!is_null($captcha)){
	$res = json_decode(file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=PASTE-YOUR-SECRET_KEY-HERE&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']));	if($res->success === true){
		//CAPTCHA validado!!!
		echo 'Tudo certo =)';
	}
	else{
		echo 'Erro ao validar o captcha!!!';
	}
}
else{
	echo 'Captcha não preenchido!';
}

Trong dòng 6, chúng tôi yêu cầu kiểm tra xem hình ảnh xác thực có hợp lệ không. Lưu ý rằng chúng tôi phải chuyển khóa bí mật của mình vào URL để quy trình hoạt động. Yêu cầu này sẽ trả về một json với thông tin thành công. Nếu đúng, điều đó có nghĩa là hình ảnh xác thực đã được xác thực

Và sẵn sàng. Bằng cách đó, biểu mẫu của bạn sẽ được bảo vệ nhiều hơn

Trên trang tổng quan của Google, bạn có thể xem báo cáo chứa các yêu cầu/kiểm tra, yêu cầu đáng ngờ, v.v.

Làm cách nào để đặt Google CAPTCHA trong HTML?
Hình 4. Google reCAPTCHA (bảng thống kê và báo cáo)

Tôi hy vọng nội dung này hữu ích cho bạn

Thấy bạn

Rafael Wendel Pinheiro

Làm cách nào để đặt Google CAPTCHA trong HTML?

Có bằng đại học về Hệ thống thông tin, bằng sau đại học về Hệ thống cơ sở dữ liệu và bằng thạc sĩ về Giáo dục, tập trung vào Công nghệ cộng đồng xã hội. Ông là giáo sư giáo dục kỹ thuật và công nghệ tại Viện Giáo dục, Khoa học và Công nghệ Liên bang São Paulo, giảng dạy các môn học trong lĩnh vực lập trình, cơ sở dữ liệu, phát triển dự án và công nghệ phần mềm

Làm cách nào để sử dụng Google captcha trong HTML?

Phần tử HTML để hiển thị tiện ích reCAPTCHA. Chỉ định ID của vùng chứa (chuỗi) hoặc chính phần tử DOM. Một đối tượng chứa tham số dưới dạng cặp khóa=giá trị, ví dụ: {"sitekey". "your_site_key", "theme". "ánh sáng"}

reCAPTCHA trong HTML là gì?

reCAPTCHA bảo vệ trang web của bạn khỏi hành vi gian lận và lạm dụng mà không tạo ra xung đột . reCAPTCHA sử dụng công cụ phân tích rủi ro nâng cao và các thách thức thích ứng để ngăn phần mềm độc hại tham gia vào các hoạt động lạm dụng trên trang web của bạn.