0

هیچ محصولی در سبد خرید نیست.

طراحی سایت در اصفهان, سئو سایت اصفهان, ساخت سایت اصفهان, طراحی سایت حرفه ای اصفهان, بهینه سازی سایت , بازاریابی و دیجیتال مارکتینگ 09133886881 احمدپور

ایجاد کد کپچا در php

نویسنده پشتیبانی وب یار
امتیاز مطلب
تعداد بازدید 1961
تاریخ بروزرسانی ۱۸ اردیبهشت ۱۴۰۰

آموزش ایجاد کد کپچا در php

معمولا شما در بیشتر سایت هایی که دارای فرم های اینترنتی هستند شاهد کدهای کپچا (captcha)تصویر امنیتی – هستید. بیشتر این کدها از کلمات به هم ریخته ای تشکیل شده است که شما باید شکل صحیح آن را وارد نموده تا بتوانید  از عهده ی این تست بر آیید.

کد کپچا مخفف عبارت (Completely Automated Public Turing test to tell Computers and Humans Apart) می باشد ؛ یعنی تست کاملا خودکار برای تشخیص انسان از رایانه. هدف از ایجاد کد کپچا در php این است که کاربران از عهده ی تست کد کپچا بر می آیند ولی رایانه ها به تنهایی نمی توانند از عهدی این آزمون ( تصویر امنینی کد کپچا ) برآیند. لذا در ادامه ی بحث می پردازیم به کد ایجاد تصویر امنیتی ساده (کپچا) در php ، تا بتوانید به راحتی برای فرم های ورود ، عضویت ، نظرات و هر آن چه که برای امنیت سایت نیاز به ایجاد کد کپچا در php دارید ، آن را وارد نمایید. با تیم طراحی سایت اصفهان وب یار همرا باشید تا نحوه ی ایجاد کد کپچا در php را به شما نشان دهیم و از آن لذت ببرید.

 

کد ایجاد تصویر امنیتی ساده (کپچا) در php

کد ایجاد تصویر امنیتی ساده

 

کاربردهای کد کپچا

 

  • تصویر امنیتی برای جلوگیری از اسپم در بلاگها و سایر وب‌گاه‌ها
  • تصویر امنیتی برای جلوگیری از نفوذ ربات ها به رایانه ها
  • تصویر امنیتی برای جلوگیری از نفوذ هکرها به رایانه ها

 

مراحل ساخت کد تصویر امنیتی (کپچا) در php

 

ابتدا باید دو فایل به نام های index.php و simplephpcaptch.php   ایجاد کنید. (البته توجه نمایید که دو فایل simplephpcaptch.php  و index.php کافی نبوده و نیازمند فونت و لیست لغات است که در پایین صفحه ضمیمه شده اند.)

 

فایل index.php

بعد از ایجاد فایلindex.php قطعه کدهای زیر را داخل آن قرار دهید.

 

کد html
<img height="70" width="200"  src="simplephpcaptcha.php"/>

<form action="" method="post">

            <input type="text" name="captcha" />

            <input type="submit" name="submit" />

</form>

 

خط اول یک image  ایجاد می کند که این تصویر در فایل simplephpcaptch.php ایجاد می شود و در صفحه ی index.php فراخوانی و نهایتا به نمایش در می آید. در خط بعدی یک فرم ایجاد می شود که کاربر باید کد کپچا ( تصویر امنیتی ) به نمایش در آمده را در این قسمت وارد نماید.

کد ایجاد تصویر امنیتی ساده (کپچا) در php

آموزش ایجاد تصویر امنیتی ساده (کپچا) در php

کد php

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

 

<?php
session_start();
if(isset($_POST['submit'])){
            if($_SESSION['captcha'] == $_POST['captcha']){
                        echo "Captcha Is Correct<br>";
            }else{
                        echo "Captcha Isn't Correct<br>";
            }
}
?>

 

فایل simplephpcaptch.php

در این فایل کد کپچا ایجاد شده و به صفحه ی ایندکس ارسال می شود. اینک به توضیح کدهای موجود در این فایل می پردازیم.

 

$fp = fopen('xsixlw.txt',"r");
 $count = filesize('xsixlw.txt')/6 - 1;
 $pos = 6*rand(0,$count);
 fseek($fp,$pos);
 $captcha = warpedCaptcha(trim(fread($fp,6)));
 fclose($fp);

 

در قطعه کد بالا از فایل xsixlw.txt  برای استفاده از حروف به صورت رندم استفاده شده است.

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

 

تابع warpedCaptcha
   if (5 > rand(0,6)) return $text;
   $ltrs = array('b'=>'b','c'=>'c','d'=>'d','f'=>'f','g'=>'g','h'=>'h','j'=>'j',

               'k'=>'k','l'=>'l','m'=>'m','n'=>'n','p'=>'p','q'=>'q','r'=>'r',

                                       's'=>'s','t'=>'t','v'=>'v','w'=>'w','x'=>'x','z'=>'z');

  $vkeys = $vltrs = explode(',','a,e,i,o,u,y');
  shuffle($vkeys);
  $vowels = array();
  foreach($vkeys as $ndx=>$vkey) $vowels[$vkey] = $vltrs[$ndx];
  $ltrs = array_merge($ltrs,$vowels);
  $text = str_split($text);
  $captcha = '';
  foreach($text as $txt) $captcha .= $ltrs[$txt];
  return $captcha;
 }

 

در قطعه کد زیر کد کپچای ارسالی توسط کاربر به این صفحه ارسال می شود.

 

session_start();
 $_SESSION['captcha'] = $captcha;
session_write_close();

 

بعد از ایجاد کد کپچا باید آن را در تصویر قرار بدهیم و رنگ و شکل آن را تغییر دهیم.

 

$im = imagecreatetruecolor(200,70);
 $black = imagecolorallocate($im,0,0,0);
 imagecolortransparent($im,$black);

 

در کد بالا یک تصویر 200px *70px  ایجاد می کند و رنگ پشت زمینه آن را ابتدا سیاه می نماید و سپس پشت زمینه را حذف می کند تا فقط کد کپچا یک border سیاه داشته باشد. بعد از آن نوبت به رنگ آن می رسد ابتدا با استفاده از کد زیر هر تعداد رنگ به دلخواه می توانید ایجاد کنید که هربار یک رنگ به طور رندم انتخاب می شود.

switch(rand(0,4))
 {
  case 0:$color = imagecolorallocate($im,34,155,91);break;
  case 1:$color = imagecolorallocate($im,233,26,74);break;
  case 2:$color = imagecolorallocate($im,233,26,195);break;
  case 3:$color = imagecolorallocate($im,244,178,19);break;
  case 4:$color = imagecolorallocate($im,53,125,199);break;
 }

سپس نوبت به سایز کد کپچا php می رسیم:

 

$x = 20;$y = 47
 for ($i=0;$i<6;$i++)

  $angle = rand(-8,8) + rand(0,9)/10;
  $fontsize = rand(22,32);
  $letter = substr($captcha,$i,1);
  $coords = imagettftext($im,$fontsize,$angle,$x,$y,$color,'oldsans.ttf',$letter);
  $x += ($coords[2]-$x) + 1;
 }

 

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

به تابع imagettftext() به ترتیب پشت زمینه ، سایز، زاویه ،موقعیت ، رنگ ، نوع فونت ، حرف مورد نظر داده می شود و حرف مورد نظر به نمایش در می آید.

حال فایل های مورد نیاز را می توانید از این قسمت دانلود نمایید.

 

دانلود کد ایجاد تصویر امنیتی ساده (کپچا) در php

 

اما در هر صورت اگر دسترسی به کدهای سایت خود ندارید و یا از سیستم مدیریت محتوا وردپرس استفاده می نمایید و وقت برای کد نویسی ندارید ، پیشنهاد می کنیم که از پلاگین کپچا وردپرس (captcha) استفاده نمایید.

 

نتیجه گیری

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

 

1/5 (1 Review)
مطالب مرتبط
مطالعه :

در مقاله قبلی در شرکت وبیار به شما یک نرم افزار انحصاری که فقط با سیستم عامل mac os کار میکرد را به شما ارائه دادیم. در این مقاله میخواهیم تا به شما نحوه چگونگی کار کردن با یک نرم افزاری که به صورت عمومی برای تقریبا همه سیستم عامل ها به جز لینوکس را ساپورت میکند.این نرم افزار متعلق به شرکت ادوبی می باشد. و به نام ادوب ایکس دی ( adobe XD ) شناخته می شود. اکنون به سراغ سوالاتی می رویم که در ادامه برای شما به وجود می آید.این سوالات عبارت اند از: ادوب ایکس دی چیست؟ ادوب ایکس دی با بقیه رقبای خود چه مزایایی دارد؟ معایب این نرم افزار چیست؟ ادوب ایکس دی چیست؟ ادوب ایکس دی یک نرم افزار خوب در زمینه طراحی رابط کاربری می باشد.  و امکانات بسیار زیادی را در اختیار شما قرار می دهد. دیروز در مورد نرم افزار اسکچ گفتیم که این نرم افزار با فوتوشاپ و ایکس دی مقایسه می شود. در سال گذشته ادوب ایکس دی بهترین طراح رابط کاربری در میان محصولات موجود در این زمینه شد.شما با تسلط به این نرم افزار می توانید استوری و پست اینستاگرام و طراحی رابط کاربری سایت های خود را انجام دهید.اما حال این نرم افزار جذاب را با بقیه رقبای خود بررسی می کنیم.     ادوب […]

اسکچ چیست؟
مطالعه :

امروزه ظاهر سایت و رابط کاربری آن بسیار روی کاربران تاثیر می گذارد. شما باید از بروز ترین و بهترین نرم افزار های موجود جهت طراحی رابط کاربری خود استفاده کنید.امروز با یک نرم افزار انحصاری در خدمت شما هستیم.یکی از قدرتمند ترین ها در سطح خود می باشد.این نرم افزار اسکچ نام دارد. سوالاتی راجع به این نرم افزار وجود دارد که آن ها را عنوان می کنیم و یکی یکی به آن ها پاسخ می دهیم.این سوالات عبارت اند از: اسکچ چیست؟ آیا می توان اسکچ را بر روی ویندوز اجرا کرد؟ مزایای اسکچ کدام اند؟ نرم افزار های جایگزین اسکچ در ویندوز و لینوکس کدام اند؟ اسکچ چیست؟ اسکچ یک نرم افزار مبتنی بر سیستم عامل mac os که به طور انحصاری متعلق به لپتاپ ها و سیستم های شرکت اپل می باشد. این نرم افزار در سال 2011 شروع به کار کرد. به طوری که رفته رفته به یکی از محبوب ترین نرم افزار های طراحی رابط کاربری و گرافیک سایت تبدیل شد. اما اصلی ترین ایراد این نرم افزار را می توان به انحصاری بودن آن ربط داد. به طوری که شما نمی توانید با نرم افزار های ویندوزی فایل های اسکچ را راه اندازی کنید.     آیا می توان اسکچ را روی ویندوز اجرا کرد؟ همان طور که در بالا به شما گفتیم […]

مطالعه :

اگر به فکر فروش محصولات از طریق فروشگاه اینترنتی یا اینستاگرام هستید، نیاز به عکس‌های با کیفیت دارید. در فضای مجازی مشتری شما با دیدن عکس محصولات تصمیم به خرید می‌گیرد. اما یک عکس با کیفیت از محصولات چه ویژگی‌هایی دارد؟ آیا می‌توان با صرف هزینه کم عکس‌های حرفه‌ای گرفت؟ پاسخ به این سوال مثبت است. شما با رعایت چند ترفند ساده می‌توانید عکس‌های خوبی از محصولاتتان بگیرید و آن را در سایت یا اینستاگرام به اشتراک بگذارید. در این مقاله از وب یار به آموزش عکاسی از محصولات برای اینستاگرام می‌پردازیم. آموزش عکاسی از محصولات برای اینستاگرام با 5 ترفند برای شروع آموزش عکاسی از محصولات برای اینستاگرام می‌توانید از دوربین گوشی همراه استفاده کنید. گوشی‌های هوشمند قدیمی که کیفیت دوربین آن‌ها کمتر از 4 مگا پیکسل است برای اینکار مناسب نیستند. اگر دوربین گوشی هوشمند شما کیفیت مناسبی دارد، با استفاده از آن و رعایت نکات زیر می‌توانید عکس‌های با کیفیتی خلق کنید.     1.     نورپردازی مناسب را فراموش نکنید بهترین نوع نورپردازی استفاده از نور طبیعی خورشید است. با نور خورشید رنگ ها پرطروات تر و مرزها مشخص تر هستند. منظور ما عکاسی در نور شدید خورشید نیست. برای عکاسی از محصول نقطه‌ای از اتاق که نور خورشید ملایم است انتخاب کنید. در نظر داشته باشید؛ بهترین زمان برای عکاسی نیم ساعت بعد از طلوع آفتاب […]

انجام کلیه ی تبلیغات کاندیدای شورای شهر و کشور
مطالعه :

انجام تبلیغات کاندیدای شورای شهر استان اصفهان انجام تبلیغات کاندیدای شورای شهر و کشور توسط یکی از حرفه‌ای‌ترین تیم‌های تبلیغات و دیجیتال مارکتینگ استان اصفهان امکان‌پذیر می‌باشد. کاندیداهای محترم شورای شهر می توانند جهت دریافت مشاوره تخصصی و همچنین انجام تبلیغات تخصصی با تیم تبلیغات کاندیداهای شورای شهر و کشور تماس حاصل فرمایند.   خدمات و تبلیغات گسترده ی تیم دیجیتال مارکتینگ وب یار در این زمینه شامل موارد زیر است: ارسال انبوه پیامک های تخصصی، مهندسی اجتماعی و تبلیغاتی به مشاغل و فعالان کسب کار با هدف جذب و ایجاد قشر حمایت کننده بر اساس منطقه خاص ارسال تبلیغات انبوه تخصصی بدون محاسبه هزینه هر ارسال در واتساپ و ایجاد گروه های حمایتی ومدیریت آنها ارسال تبلیغات کاندیدای شورا به شماره ها و آی دی های گروه های تلگرام و کاربران بر اساس منطقه و شهر و افزون افراد بر اساس منطقه مسکونی و شهر به گروه های حمایتی شما کاندیدای محترم شورای شهر و کشور. طراحی وبسایت سریع و سبک برای کاندیداها با هدف پاسخگویی و پرسنال برندینگ چند جانبه با قابلیت استفاده در عرصه های محتلف شرکتی یا شخصی با قیمت مناسب. بررسی روش های تبلیغاتی و سخنرانی و مشاوره برای مردم و همچنین یادگیری روش های بازخورد گیری از تبلیغات اینترنتی برای انتخابات شوراها وب یار یک تیم متشکل از متخصصین دیجیتال مارکتینگ و بازاریابی که […]

تفاوت وب سایت و وب اپلیکیشن چیست ؟
مطالعه :

وب سایت یا وب اپلیکیشن کدام یک انتظارات شما را برآورده می کند؟ تفاوت اصلی چیست و کدام یک بهترین راه حل برای تجارت شما خواهد بود؟ در این مقاله وب یار به بررسی تفاوت وب سایت و وب اپلیکیشن می پردازیم.   وب سایت چیست؟   وب سایت گروهی از صفحات وب قابل دسترسی جهانی است که به هم پیوسته اند و دارای یک نام دامنه واحد هستند. توسط فردی ، تجاری یا سازمانی قابل توسعه و نگهداری است. یک وب سایت در یک وب سرور منفرد یا چندگانه میزبانی می شود.هدف اصلی آن ارائه اطلاعات به کاربران است. در وب سایت ، ما می توانیم متن و پرونده های مختلف چندرسانه ای ، مانند تصاویر یا فیلم ها را پیدا کنیم. چه زمانی به وب سایت نیاز دارید؟ وب سایت یک روش موثر برای ارائه محصولات و خدمات شما است. این می تواند به شما کمک کند: مشتری جدید پیدا کنید بهبود شناخت برند افزایش فروش و درآمد ارائه اطلاعات مهمی مانند: اطلاعات شرکت ، اطلاعات تماس ، لیست قیمت ، پیشنهادات ویژه و .. وب اپلیکیشن چیست؟   وب اپلیکیشن ، نرم افزار یا برنامه ای است که در مرورگر اجرا می شود و از طریق رابط کاربری سرویس خاصی را به کاربر ارائه می دهد. معمولاً به سرور مرکزی متصل می شود تا محتوا را به کاربر […]

همه چیز دربار فیگما
مطالعه :

در زمینه طراحی رابط کاربری نرم افزار های مختلفی وجود دارند که قبلا با آن ها آشنا شده اید در ادامه یه چند مورد خواهیم پرداخت. فیگما یکی از نرم افزار های رابط کاربری است که از آن برای طراحی رابط کاربری وب سایت ها و اپلیکیشن ها استفاده می شود.در این مقاله به بررسی همه چیز درباره فیگما می پردازیم. فیگما چیست؟ همان طور که گفته شد فیگما یک نرم افزار برای طراحی رابط کاربری می باشد. این نرم افزار به صورت یک وب اپ می باشد که در بروزر خود اجرا می کنید. بر خلاف تصور عموم یک وب اپ نمی تواند گرافیک یک وب سایت یا اپلیکیشن را به خوبی و با کیفیت عالی ارائه دهد. اما با رفتن به سایت figma و دیدن امکانات این سایت به این باور می رسید که فیگما ، یکی از قدرتمند ترین نرم افزار های طراحی رابط کار بری می باشد. طریقه دسترسی به نرم افزار فیگما: این نرم افزار را هم می توانید به صورت تحت وب باز و مرورگر خود باز کنید. فقز در هر دو صورت باید سیستم شما به اینترنت متصل باشد.     ویژگی ها: فیگما یک نرم افزار تحت وب گسترده می باشد که ویژگی های بسیار جذابی دارد.اکنون به چند ویژگی این اپلیکیشن بی نظیر اشاره می کنیم. قابلیت استفاده در همه سیستم […]

دیدگاه ها

دیدگاهتان را بنویسید

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