مواقيت الصلاة - تونس

مواقيت الصلاة

مدينة هرقلة
التاريخ الميلادي --/--/----
التاريخ الهجري
---
-- -- ---- هـ
الساعة الآن --:--:--
حساب الصلاة القادمة... 00:00:00

أهلا وسهلا بك زائرنا الكريم في منتديات هرقلة ستار | Hergla Star Forums، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .





الملاحظات

اضافة رد جديد اضافة موضوع جديد


  • تطوير Pbboard
  • -->
24-10-2023 11:51
معلومات الكاتب ▼
إنضم في:
24-03-2022
رقم العضوية :
1
المشاركات :
1623
الدولة :
تونس
قوة السمعة :
100
في هذا الشرح سنتطرق لإضافة خاصية Google Recaptche في المنتدى وذلك لزيادة الحماية من تسجيل السبام 
الخطوات المتّبعة

1️⃣ لابد من أن يكون لديك حساب Google
2️⃣ إتباع
الروابط متاحة بعد الرد على الموضوع
وتطبيق الخطوات الموضحة في الصور التالية 



نختار الخيار الموضح في الصورة التالية 







نضغط على زر Envoyer وسيتم تحويلنا لصفحة أخرى تحوي أكواد خاصة بالموقع
✅ نقوم بنسخ الأكواد لإستخدامها في ما بعد




☷ ☷ ☷ ☷المرحلة الثانية وهي دمج الأكواد في القوالب☷ ☷ ☷ ☷
1️⃣ من لوحة الإدارة نقوم بفتح قالب register ونبحث عن الكود التالي 


CODE
{if {$_CONF['info_row']['captcha_o']} == 1 }
{if {$_CONF['info_row']['captcha_type']} == 'captcha_IMG'}
[color=#808080]<dl>
<dt></dt>
<dd class="row1 wd40" rowspan="2">{$lang['Image_Verification']}<br />
<span class="smallfont">{$lang['Verification']}</span></dd>
<dd class="row1 wd31">
<input name="code" id="code_confirm" class="max-input" type="text" size="5" dir="ltr"/>
<img id="turing" src="includes/captcha.php" alt="captcha" />
<input type="button" class="button button_b" value="{$lang['Image_replacement']}" onclick="updateImg()">
<script type='text/javascript'>
var clicks = 0;
function updateImg()
{
clicks++
var doc = document.getElementById("turing");
doc.src = "includes/captcha.php" + "?act=" + clicks;
}
</script></dd>
</dl>
{else}
<dl>
<dt></dt>
<dd class="row1 wd40" rowspan="2">{$lang['random_question']}</dd>
<dd class="row1 wd60">
<span class="smallfont" dir="ltr" title="{$lang['question']}">
{$question}
<u title="{$lang['correct_answer']}">
{$answer}</u></span>
<br />
<input name="code" id="code_confirm" class="max-input" type="text" size="40" dir="{$_CONF['info_row']['content_dir']}" />
<input value="{$answer}" type="hidden" name="code_answer" id="code_answer" class="max-input" />
</dd>
</dl>
{/if}
{/if}[/color] 

نضيف أسفله الكود التالي


CODE
<!--recaptcha-->
 <dt></dt>
 <dd class="row1 wd40" rowspan="2">التحقق من الرمز البشري<br />
 <span class="smallfont">{$lang['Verification']}</span></dd>
 <dd class="row1 wd31">
     <div class="g-recaptcha" data-sitekey="clé du site"></div></dd></dd>
 </dl>
 <!--recaptcha--> 


💡 مراعاة إستبدال clé du site بالكود السابق الذي قمنا بنسخه

2️⃣ في ملف index.php الموجود في جذر المنتدى نبحث عن الكود التالي 


CODE
error_reporting(E_ERROR | E_PARSE);
 define('IN_PowerBB', true);
 
 // Stop any external post request.
 if ($_SERVER['REQUEST_METHOD'] == 'POST') {
     $Y = explode('/', $_SERVER['HTTP_REFERER']);
     $X = explode('/', $_SERVER['HTTP_HOST']);
 
     if ($Y[2] != $X[0] || $Y[2] != $_SERVER['HTTP_HOST']) {
         exit('No direct script access allowed');
     } 


ونضيف أسفله الكود التالي 


CODE
// **Only validate reCAPTCHA for registration requests**
     if (isset($_GET['page']) && $_GET['page'] == 'register' && isset($_POST['register_button'])) {
         // === Google reCAPTCHA Validation ===
         $recaptcha_secret = "clé secrète"; // Replace with your actual secret key
 
         if (!isset($_POST['g-recaptcha-response']) || empty($_POST['g-recaptcha-response'])) {
             exit('reCAPTCHA verification failed. Please complete the reCAPTCHA.');
         }
 
         $recaptcha_response = $_POST['g-recaptcha-response'];
         $verify = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret={$recaptcha_secret}&response={$recaptcha_response}");
         $response_data = json_decode($verify);
 
         if (!$response_data->success) {
             exit('reCAPTCHA verification failed. Please try again.');
         }
     }
 } 


💡مراعاة إستبدال clé secrète بالكود السابق الذي قمنا بنسخه

لإضفاء مزيد من الجمالية على التحتنبيه عند عدم التأكد من الكابتشا نضبف الكود التالي في أول قالب register 

Java
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> 


ونضيف الكود التالي في آخر القالب

Java
<script>
    document.addEventListener("DOMContentLoaded", function() {
        document.querySelector("form[name='register']").addEventListener("submit", function(event) {
            var recaptcha = document.querySelector(".g-recaptcha-response").value;
            if (!recaptcha) {
                event.preventDefault(); // Prevent form submission
                Swal.fire({
  icon: "error",
  title: "خطأ أثناء التسجيل",
  text: "الرجاء تأكيد الكابتشا",
  footer: '<a href="http://localhost/forum">الرئيسية</a>'
});
            }
        });
    });
</script> 


نلاحظ بعد ذلك النتيجة النهائية لنموذج التسجيل 



في حالة عدم تأشير رمز الكابتشا يظهر لنا التنبيه التالي

 


avp Yqhtm RECAPATCHA glku js[dg hgsfhl


اضافة رد جديد اضافة موضوع جديد




الكلمات الدلالية
إضافة ، RECAPATCHA ، لمنع ، تسجيل ، السبام ،