Hướng dẫn dùng reCaptcha tạo xác minh robot chống spam website

Hướng dẫn các bạn sử dụng reCaptcha của google để giúp xác minh robot chống bị spam post bài trên website, và một số lỗi các bạn hay gặp khiến recaptcha không hoạt động.

ReCaptcha là gì?

Đây là một loại mã xác minh người truy cập trang web của chúng ta không phải là robot mà là người thật được phát triển bởi Google.

Hướng dẫn dùng reCaptcha tạo xác minh robot chống spam website

Tại sao phải sử dụng reCaptcha?

Sử dụng nó để chống các đối tượng spam, các thủ thuật curl để post bài, leech bài từ xa hoặc để auto check pass login vào website của chúng ta.

Thường thì reCaptcha hay được sử dụng tại các trang Đăng kí, đăng nhập hoặc một mục đích nào đó của các bạn.

Đây được coi là một mã bảo mật cực kì thông minh tới thời điểm hiện tại (27/8/2016) mình viết bài này thì chưa có cách nào được xem là vượt qua được.

Cách sử dụng:

Bước 1: Truy cập Link Này của google để đăng kí:

Hướng dẫn dùng reCaptcha tạo xác minh robot chống spam website

Các bạn điền thông tin để đăng kí website dùng captcha với google.

Sau khi đăng kí bạn sẽ nhận được 2 thông tin quan trọng là site key và secret key

Hướng dẫn dùng reCaptcha tạo xác minh robot chống spam website

Bước 2: Áp dụng

Giả định ra bài toán bây giờ là trên trang a.php chúng ta có một form

và khi người dùng xác minh không phải là robot thì ta hiện dòng chữ "Bạn không phải là robot" còn nếu không xác minh hoặc xác minh không đúng thì ta sẽ hiện "Bạn là robot" nhé.

Code tại trang a.php:

<?php
//cấu hình thông tin do google cung cấp
$api_url     = 'https://www.google.com/recaptcha/api/siteverify';
$site_key    = '6LfNABYTAAAAAPICpbw4l4YbZ7ncFj-javBVAstB';
$secret_key  = '6LfNABYTAAAAADRDMAycxF7ejcelEH7jz1UgCN3i';
  
//kiem tra submit form
if(isset($_POST['submit']))
{
    //lấy dữ liệu được post lên
    $site_key_post    = $_POST['g-recaptcha-response'];
      
    //lấy IP của khach
    if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
        $remoteip = $_SERVER['HTTP_CLIENT_IP'];
    } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $remoteip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    } else {
        $remoteip = $_SERVER['REMOTE_ADDR'];
    }
     
    //tạo link kết nối
    $api_url = $api_url.'?secret='.$secret_key.'&response='.$site_key_post.'&remoteip='.$remoteip;
    //lấy kết quả trả về từ google
    $response = file_get_contents($api_url);
    //dữ liệu trả về dạng json
    $response = json_decode($response);
    if(!isset($response->success))
    {
        echo 'Captcha khong dung';
    }
    if($response->success == true)
    {
        echo 'Captcha dung';
    }else{
        echo 'Captcha khong dung';
    }
}
?>
<script src="https://www.google.com/recaptcha/api.js?hl=vi"></script>
<form action="" method="POST">
    <div class="g-recaptcha" data-sitekey="<?php echo $site_key?>"></div>
    <input type="submit" name="submit" value="submit">
</form>
 

OK. Như vậy mình đã hướng dẫn các bạn cách thêm google recaptcha vào website,nó tuy đơn giản nhưng cũng rất quan trọng đó nhé.

Các bạn lưu ý dòng $site_key_post    = $_POST['g-recaptcha-response']; trong code của mình:

Biến $_POST['g-recaptcha-response'] là do scipt reCapcha tự tạo ra khi người dùng click vào xác minh. 

Có rất nhiều trường hợp mọi người test demo thì hoạt động nhưng khi tích hợp vào website thì lại không được. Test kĩ hơn thì bạn lại thấy biến $_POST['g-recaptcha-response'] này không hề có dữ liệu.

Đừng lo nguyên nhân chính là do bạn đặt các thẻ

và
không đúng vị trí nên nó sẽ không hoạt động. Các bạn nên sửa lại cho đúng theo thứ tự. 

Ví dụ sai:

<fom>
<div>
</form>
</div>

Bạn phải sử lại thành:

 
 <form>
<div>
</div>
</form>

hoặc

<div>
<form>
</form>
</div>
 

 

Chúc may mắn.

 

Từ Khóa

sử dụng recaptcha, giải pháp chống spam trang web, chống robot curl website, sử dụng mã xác minh google, lỗi reCaptcha không hoạt động, cách giúp web chặn spam và leech dữ liệu, chống tấn công web từ xa

Tác giả: Lê Văn Toàn
27-08-2016
Note Nếu bạn có bất cứ thắc mắc gì về bài viết này. hãy để lại bình luận. Quan quản trị sẽ trả lời lại bạn ngay lập tức.

Đánh Giá


Cùng Tác Giả.

Văn 7 Soạn bài cách làm văn biểu cảm về tác phẩm văn học
Hướng dẫn Soạn bài cách làm văn biểu cảm về tác phẩm văn học của chương trình văn học lớp 7. Giúp cho các em học tốt môn ngữ văn của mình cũng như các quý phụ huynh tham khảo để giản dạy cho các em.
Chọn hướng quay đầu khi ngủ theo thuật phong thủy
Không chỉ hướng phòng ngủ có vai trò quan trọng mà hướng nằm ngủ cũng ảnh hưởng đến sức khỏe, đời sống tình cảm và cả tài vận của bạn. Hướng Bắc
Những kiêng kỵ đối với phong thủy bàn thờ tổ tiên
Bàn thờ là nơi linh thiêng nhất trong mỗi gia đình thể hiện lòng thành kính của con cháu đối với tổ tiên, vì thế, luôn là một không gian quan trọng có ý nghĩa rất lớn trong đời sống tinh thần của con người.
Văn 8 Soạn bài miêu tả và biểu cảm trong văn bản tự sự
Hướng dẫn Soạn bài miêu tả và biểu cảm trong văn bản tự sự của chương trình văn học lớp 8. Giúp cho các em học tốt môn ngữ văn của mình cũng như các quý phụ huynh tham khảo để giản dạy cho các em.
Chọn phương vị tốt lành cho phòng làm việc
Theo phong thuỷ học, việc bày đặt phòng làm việc đúng phương vị tốt lành sẽ giúp các sếp thêm đảm lược, trí tuệ, ảnh hưởng đến sự hưng suy trong quản lý, thành bại trong sự nghiệp. Phong thủy cho phòng làm việc của “sếp”
Văn 6 Sự việc và nhân vật trong văn tự sự
Hướng dẫn Sự việc và nhân vật trong văn tự sự của chương trình văn học lớp 6. Giúp cho các em học tốt môn ngữ văn của mình cũng như các quý phụ huynh tham khảo để giản dạy cho các em.
Cách hóa giải phòng vệ sinh nhiễm bẩn sang khu bếp
Rất nhiều người không để ý nhưng phòng vệ sinh cạnh bếp ảnh hưởng mật thiết đến sự giàu có và sức khỏe của cả gia đình.
Sử dụng màu đỏ hợp phong thủy
Theo phong thủy, màu đỏ là biểu tượng của Hỏa, tượng trưng cho sự may mắn, hạnh phúc và nó cũng đi liền với ý nghĩa quyền lực, vương giả, bởi vậy trong kiến trúc nhà ở, màu đỏ có một vị trí nhất định đem đến sự tài vượng, thuận lợi.
Hóa giải tác hại của xà nhà trong phong thủy
Nếu xà nhà là một bộ phận của trần nhà thì ít nguy hiểm hơn, chẳng hạn như một cây đà cắt ngang phòng.
Chọn vật liệu bếp hợp phong thủy
Bếp theo ngũ hành vốn thuộc Hỏa, do đó những bề mặt ốp lát, hệ thống tủ bếp với vật liệu và màu sắc cụ thể luôn đem lại các hiệu quả khác nhau về phong thủy. Nguyên tắc sinh khắc ngũ hành cho thấy, không phải cứ tăng tính Hỏa nhờ Mộc là tốt, mà ngược lại, cần giảm bớt yếu tố Hỏa vượng để giữ gìn hòa khí trong nhà, tạo nên môi trường nấu bếp thư giãn, thoải mái, mát mẻ cho người sử dụng.

Chúng tôiĐiều khoảnHỏi đápKiếm tiền