|
إنضمامك إلي منتديات استراحات زايد يحقق لك معرفة كل ماهو جديد في عالم الانترنت ...
انضم الينا
#1
| ||
| ||
<div> درس بسيط عن كيفية برمجة كابتشا تعتمد على التعرف على شكل ما و الآن نذهب للكود المستخدم للتحقق من صحة الادخال مثال: ما فائدة الكابتشا؟ تمنع السبام و البوت من التسجيل على موقعك او اضافة محتوى الخ.. لماذا كابتشا تعتمد على صور و ليس التعرف على نص؟ ببساطة الكابتشا التي تعتمد على التعرف على نص ممكن يتجاوزها البوت بسهول بأستخدام تقنية اسمها OCR او Optical Character Recognition التي تستطيع التعرف على اي نص داخل صورة و لهذا السبب يفضل ان لا تستخدم كابتشا تعتمد على التعرف على نص المتطلبات: تجميعة بسيطة لأشكال ليتعرف عليها الزائر.. مثلاً 5 صور لـ قطط او 5 صور لـ سيارة او 5 صور لـ كومبيوتر الخ الكود: اولاً.. نبني المتغيرات التي ممكن للذي يحب ستخدم الكابتشا ان يغيرها رمز PHP: // User must set these $objects = array("bed", "bird", "book", "cable", "car", "chair", "computer", "currency", "dog", "flowers"); $offset = array("min" => 1, "max" => 5); $num_solutions = 3; $num_options = 3; المتغير $objects هو مصفوفة تضع فيها كل الاشكال المتغير $offset هو مصفوفه فيها عدد الصور لكل شكل مثلاً لو عندي 5 صور مرقمة على شكل cat-1 cat-2 cat-3 cat-4 cat-4 اضع min واحد و max خمسة المتغير $num_solutions تضع فيه عدد الاشكال التي تريد ان يتعرف عليها الزائر المتغير $num_options هو عدد الخيارات لكل شكل ثانياً.. نبدأ الجلسة و نفتح مصوفتين فارغات رمز PHP: // Do not mess with these session_start(); $captchas = array(); $_SESSION['captcha_solutions'] = array(); ثالثاً.. نختار الاشكال للتعرف عليها من مصفوفة الاشكال على العدد الذي اختاره مستخدم السكريبت رمز PHP: <span style="color: #000000">// Shuffle the array and pick $num_solutions objects shuffle($objects); for($i = 0; $i <span style="color: #007700">// Display the pictures of the captcha foreach($captchas as $captcha) { // Build a temp array of objects $temp = $objects; $key = array_search($captcha, $objects); unset($temp[$key]); shuffle($temp); // Build a list of options $options = array(); for($i = 0; $i imagefilter($image, IMG_FILTER_GAUSSIAN_BLUR); imagefilter($image, IMG_FILTER_PIXELATE, 1, true); imagefilter($image, IMG_FILTER_MEAN_REMOVAL); // Generate the output of the image, encode it and include it as a data URI ob_start(); imagejpeg($image); $base64 = base64_encode(ob_get_contents()); ob_end_clean(); echo " "; foreach($options as $option) echo "$option"; echo " "; // Save the solution to an array of solutions $_SESSION['captcha_solutions'][] = $captcha; } <div style="margin:20px; margin-top:5px"> رمز PHP: <div class="alt2"> <div dir="ltr" style="text-align:left;"> <span style="color: #000000"> session_start(); $answers_user = $_POST['captcha']; $answers_correct = $_SESSION['captcha_solutions']; $num_correct = count($answers_correct); $correct = 0; for($i = 0; $i <span style="color: #007700"> __DEFINE_LIKE_SHARE__ |
مواقع النشر (المفضلة) |
| |
المواضيع المتشابهه | ||||
الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
[طلب] تركيب كابتشا مقابل مبادي | محروم.كوم | منتدى أخبار المواقع والمنتديات العربية والأجنبية | 0 | 09-25-2013 05:50 AM |
تحميل الكتاب الرائع في تعلم برمجة php | محروم.كوم | منتدى أخبار المواقع والمنتديات العربية والأجنبية | 0 | 11-23-2012 07:50 PM |
طلب: تعلم برمجة البرامج بإستخدام Qt للسيمبيان | محروم.كوم | منتدى أخبار المواقع والمنتديات العربية والأجنبية | 0 | 09-29-2012 12:10 PM |
تعلم برمجة الكنترول | محروم.كوم | منتدى أخبار المواقع والمنتديات العربية والأجنبية | 0 | 08-30-2010 12:00 AM |
تعلم برمجة سيارتك بنفسك | محروم.كوم | منتدى أخبار المواقع والمنتديات العربية والأجنبية | 0 | 03-06-2010 05:10 PM |