استفاده از reCAPTCHA گوگل در php

  • آپدیت شده در تاریخ

استفاده از reCAPTCHA گوگل در php

با استفاده از reCAPTCHA گوگل می توانید کاربران واقعی را از ربات ها تشخیص بدید . کاربران فقط با یک کلیک می توانند تایید کنند که ربات نیستند.

پس ، reCAPTCHA سایت شما را از هرزنامه ها و spam حفاظت می کند آن هم با یک تجربه کاربری بهتر (UX) !   .شما به راحتی میتوانید از reCAPTCHA گوگل  در پروژه ها و اسکریپت PHP خود استفاده کنید.

استفاده از reCAPTCHA گوگل در php

ما یک فرم تماس با ما ، با استفاده از reCAPTCHA گوگل در php ساختیم . قبل از شروع کار باید یک سری کار های اولیه از قبیل تایید دامنه و گرفتن API Key انجام بدید که بسیار آسان است و در زیر توضیح دادیم .

دریافت reCAPTCAH API key :

برای استفاده از reCAPTCHA گوگل در php ، نیاز است که سایت خودتان را ثبت و API Key را دریافت کنید

سایت خود را از طریق این لینک در گوگل ثبت کنید – https://www.google.com/recaptcha/admin

استفاده از reCAPTCHA گوگل در php

دریافت کلید عمومی سایت :

کلید مخصوص سایت شما در این قسمت نشان داده می شود.

استفاده از reCAPTCHA گوگل در php

دریافت کلید مخفی (Google Secret Key) :

استفاده از reCAPTCHA گوگل در php

کد HTML :

قبل از هر کاری باید کتابخانه جاواسکریپت reCAPTCHA API را فراخوانی کنید .

قبل از دکمه submit یک تگ div برای قرار دادن reCAPTCHA گوگل ایجاد کردیم . مقدار مشخصه data-sitekey را با site key (کلید عمومی) خود تغییر بدید.

کد PHP :

در کد php زیر نیاز است که Google Secret Key را تغییر بدید

قبلا در مورد ساخت کپجا اختصاصی مقاله ای نوشتیم که خواندن آن هم خالی از لطف نیست .

موفق و پیروز باشید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران (۲۲)

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. امیرحسین ۳۱ تیر ۱۴۰۲

    سلام، ممنون از آموزش مفیدتون.
    برای من خطای ERROR for site owner: Invalid key type میده.
    ممنون میشم راهنمایی بفرمایید.

    پاسخ
    1. حسن شفیعی ۳ مرداد ۱۴۰۲

      سلام ممنون
      مطمینا کلید ها رو جابجا زدید

      پاسخ
      1. امیرحسین ۱۱ مرداد ۱۴۰۲

        مچکرم.
        چطوریی میتونم فارسیش کنم؟ اون متنی که نوشته من ربات نیستم..
        و آیا میشه باکسشو وسط‌چین کرد!؟
        سپاس فراوان از شما و سایت بسیار مفیدتون

        پاسخ
      2. حسن شفیعی ۱۱ مرداد ۱۴۰۲

        با این روش میشه زبان رو تغییر داد
        https://jsfiddle.net/7umzsmus/4

        بله باکس رو که شما داخل div میزارید و بعد به اون div اصلی که کانتینر هست استایل میدید که وسط چین بشه

        پاسخ
      3. امیرحسین ۲۱ مرداد ۱۴۰۲

        بسیار ممنونم.

        پاسخ
  2. reza ۱۵ آذر ۱۴۰۰

    سلام
    من اینو استفاده کردم اما همش توی مرورگر کروم این متن میاد
    recaptcha__en.js:120 [Violation] Added non-passive event listener to a scroll-blocking ‘touchstart’ event. Consider marking event handler as ‘passive’ to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
    (anonymous) @ recaptcha__en.js:120
    (anonymous) @ recaptcha__en.js:36
    (anonymous) @ recaptcha__en.js:36
    (anonymous) @ recaptcha__en.js:28
    OY @ recaptcha__en.js:416
    It.I @ recaptcha__en.js:523
    FI.I @ recaptcha__en.js:535
    (anonymous) @ recaptcha__en.js:506
    (anonymous) @ recaptcha__en.js:38
    J..I @ recaptcha__en.js:505
    y.I @ recaptcha__en.js:571
    I @ recaptcha__en.js:608
    jW.render @ recaptcha__en.js:505
    (anonymous) @ recaptcha__en.js:331
    Hr @ recaptcha__en.js:563
    (anonymous) @ recaptcha__en.js:620
    (anonymous) @ anchor?ar=1&k=6Lec3H8dAAAAAJVfM221RSPdxVsDbe-y5beURVMN&co=aHR0cDovLzEyNy4wLjAuMTo4MDA3&hl=en&v=_7Co1fh8iT2hcjvquYJ_3zSP&size=normal&cb=73pd89kwukrh:183
    recaptcha__en.js:120 [Violation] Added non-passive event listener to a scroll-blocking ‘touchstart’ event. Consider marking event handler as ‘passive’ to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952

    توی کنسول
    براش هرچی سرچ میکنم میگن از فلان کد استفاده کنید من می کنم هیچ اتفاقی نمیفته
    امکانش هست راهش رو بهم بگید؟

    پاسخ
    1. حسن شفیعی ۱۵ آذر ۱۴۰۰

      سلام. از این کد استفاده کنید

      (function () {
      if (typeof EventTarget !== “undefined”) {
      let func = EventTarget.prototype.addEventListener;
      EventTarget.prototype.addEventListener = function (type, fn, capture) {
      this.func = func;
      if(typeof capture !== “boolean”){
      capture = capture || {};
      capture.passive = false;
      }
      this.func(type, fn, capture);
      };
      };
      }());

      پاسخ
  3. محمد طاها ۳۰ مرداد ۱۳۹۹

    با سلام خدمت شما آقای شفیعی این سایت یکی از بهترین سایت ها در زمینه یادگیری PHP است من خیلی وقت بود که دنبال کد کپچای گوگل بودم ولی هیچ جا پیدا نکردم با تشکر از شما

    پاسخ
    1. حسن شفیعی ۳۰ مرداد ۱۳۹۹

      سلام. خیلی خوشحالیم که مفید واقع شده.
      موفق و پیروز باشید.

      پاسخ
  4. محمد ۱۸ خرداد ۱۳۹۸

    سلام،میشه واسه سایتی که با localhostبالا میاد و دامنه و هاست نداره هم اضافه کر؟

    پاسخ
    1. حسن شفیعی ۱۸ خرداد ۱۳۹۸

      سلام. تقریبا سه سال پیش بصورت پیش فرض این مورد از سمت گوگل فعال بود ولی الان باید بصورت دستی localhost را به دامنه های پشتیبانی کلید ایجاد شده از طریق کنسول ادمین و supported domain اضافه کنید.
      موفق باشید.

      پاسخ
      1. ساحل ۲۲ خرداد ۱۳۹۸

        سلام در این مورد میشه بیشتر توضیح بدید . من میخوام برای سایتی که روی localhost فعاله . چنین کاری انجام بدم

        پاسخ
      2. حسن شفیعی ۲۲ خرداد ۱۳۹۸

        سلام. دسترس بودن دامنه مهم نیست شما فقط باید در هنگام ثبت نام کلید برای ریکپچا نام دامنه های خودتون رو وارد کنید بهتون کلید رو میده همین.
        https://www.google.com/recaptcha/admin/create

        پاسخ
  5. یاسین ۲۱ اردیبهشت ۱۳۹۸

    سلام, عالی بود و کاربردی, ممنون از زحماتتون

    پاسخ
  6. amin ۲۵ فروردین ۱۳۹۸

    سلام
    من تو سایت https://* میخام لینک کوتاه درست کنم ولی سایتش از کد کپچا ورژن ۱ استفاده میکنه که غیر فعال شده
    باید چیکار کنم ؟
    راهی هست که مثلا از قسمت راست کلیک (Inspect Element) کد روتغییر بدیم ؟
    یا هر راه دیگه ای که بشه دور زد یا یا یا
    خواهشا جواب بدین خیلی گیرم
    تشکر

    پاسخ
    1. حسن شفیعی ۲۵ فروردین ۱۳۹۸

      سلام. خیر امکان دستکاری از سمت کاربر وجود ندارد و از یکی از بخش های تماس با مای سایت مورد نظر اطلاع بدید تا این مشکل که مربوط به وبسایت آن ها است حل بشه.
      موفق باشید.

      پاسخ
      1. amin ۲۵ فروردین ۱۳۹۸

        مشکل اینه که هیچ راه ارتباطی نداره این سایت

        پاسخ
      2. حسن شفیعی ۲۵ فروردین ۱۳۹۸

        از بخش report Abuse ارسال کنید.

        پاسخ
      3. amin ۳۰ اردیبهشت ۱۳۹۸

        این قسمت که میگین کجاست ؟
        و اگه میشه شما هم یبار ریپورت بدین که درخواست بیشتر بشه و درست کنن کد رو

        پاسخ
      4. حسن شفیعی ۳۰ اردیبهشت ۱۳۹۸

        بررسی شد اطلاعات تماس درستی برای این سایت وجود ندارد. از سایت های دیگر که سرویس مشابه ارایه می دن استفاده کنید.
        موفق باشید.

        پاسخ
      5. amin ۲ تیر ۱۳۹۸

        چطور میتونم سایتی که دقیقا از این cms استفاده میمنه رو پیدا کنم ؟
        چون امکانات سایتهای دیگه مثل این نیست

        پاسخ
      6. حسن شفیعی ۲ تیر ۱۳۹۸

        سلام. باید جستجو کنید. واقعا در مورد این سایت ها اطلاعی ندارم.

        پاسخ
دوره های آموزشی