SpareNet Servers Advertising & Link Exchange

اطلاعیه

بستن
هیچ اطلاعیه ای هنوز ایجاد نشده است .

آموزش ساخت لیست دامنه های سه حرفی ir به زبان php

بستن
X
 
  • فیلتر
  • زمان
  • نمایش
پاک کردن همه
نوشته‌های جدید

  • آموزش ساخت لیست دامنه های سه حرفی ir به زبان php

    [align=center][/align]
    با سلام خدمت دوستان.
    در این آموزش به نحوه تولید لیست دامنه های 3 حرفی ir ، به زبان php و به روش حلقه های تو در تو For میپردازیم.

    خب در شروع کار ، تگ های لازم را ایجاد میکنیم:[php]<?php
    error_reporting(0);


    ?>

    [/php]

    اکنون نیاز است که یک آرایه برای حروف هایی که قرار است با هم ترکیب شوند و دامنه 3 حرفی رو تشکیل دهند ، ایجاد کنیم.
    برای این کار ابتدا یک متغیر بنام types ایجاد و با حروف الفبا و اعداد مقدار دهی مینماییم:
    [php]<?php
    error_reporting(0);
    $types = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v, w,x,y,z,1,2,3,4,5,6,7,8,9);
    ?>

    [/php]
    توجه داشته باشین آرایه ما دارای 35 مقدار است. بیاد داشته باشید که شروع خانه ها در آرایه از 0 میباشد و در نتیجه اکنون شماره خانه های ارایه ما از 0 تا 34 خواهد بود. اگر تعداد را کم و زیاد نمودید به تعداد آن و استفاده در حلقه for دقت نمایید.

    اکنون به زمان ایجاد حلقه های تو در تو For رسیده ایم. چون دامنه ما سه حرفی است نیاز به سه حلقه تو در تو داریم.
    حلقه اول برای تولید حرف اول دامنه و حلقه دوم برای تولید حروف دم و حلقه سوم برای تولید حرف سوم نیاز است.

    همانگونه در بالا ذکر شد ، تعداد خانه ها 34تا میباشد. پس باید حلقه forمان از 0 شروع و به عدد 34 که رسید متوقف شود. در نتیجه خواهیم داشت:
    [php]for($i=0;$i<=34;$i++){    

    }[/php]

    و سایر حلقه ها نیز به همین صورت می باشد. ولی بصورت تو در تو بوده و متغیر شمارنده نیز باید تغییر کنید($i) . که خواهیم داشت :
    [php]for($i=0;$i<=34;$i++){    
        for($j=0;$j<=34;$j++){
            for($h=0;$h<=34;$h++){
            

            }
        }
    }

    [/php]

    سپس به مرحله تولید دامنه و چاپپ آن در خروجی میرسیم.
    برای تولید باید به ابتدا یک متغیر در حلقه for سوم(چون لیست دامنه مورد نظر ما سه حرفی است باید در حله سوم دستور چاپ و تولید را بنویسیم. و اگر چهار حرفی باشد در حلقه چهارم) دستورات لازم به بدین شکل ایجاد میکنیم.
    1- ساخت یک متغیر بنام text
    2- مقدار دهی آن بدین صورت :[php]$text = $types[$i].$types[$j].$types[$h].".ir";[/php]
    مقادیر بالا در هر بار که حلقه اجرا میشود یک از حروف های بالا بهشان تعلق میگیرد
    3- برای چاپ خروجی:[php]echo $text."<br>";[/php]

    که در پایان کل سورس بدین شرح است :[php]<?php
    error_reporting(0);
    $types = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v, w,x,y,z,1,2,3,4,5,6,7,8,9);

    for($i=0;$i<=34;$i++){    
        for($j=0;$j<=34;$j++){
            for($h=0;$h<=34;$h++){
                $text = $types[$i].$types[$j].$types[$h].".ir";
                echo $text."<br>";                                
            }
        }
    }

    ?>

    [/php]

    لیست تولید شده شامل 46656 عدد دامنه میباشد. (35*35*35 = 46656 )
    میتوانید با ادامه دادن این آموزش و متصل کردن به یک فانکشن ، Api یا ... آن را تغییر داده و فقط دامنه ایی که باز هستند و هنوز ثبت نشده اند را چاپ کنید.

    امیدوارم که این آموزش نیز مورد استفاده دوستان قرار گیرد.
    ارادتمند . a3is
    [align=center][/align]
    [align=center]

    ما زنـ-ـ-ـده به آنیـــم که آرام نگیریم
    موجیم که آسودگی ما عدم ماست

    [/align]

  • #2
    RE: آموزش ساخت لیست دامنه های سه حرفی ir به زبان php

    سلام دوست عزیز
    اگه وقت دارید یه زحمت بکشید و برنامه رو کامل کنید
    که بشه دامین های ثبت نشده رو پیدا کرد



    ممنون

    نظر


    • #3
      RE: آموزش ساخت لیست دامنه های سه حرفی ir به زبان php

      سلام.
      با توجه به درخواست دوستان ، کدی مبنی بر شناسایی دامنه هایی که ثبت نشده اند رو تهیه کردیم.


      کد:
      <?php
      error_reporting(0);
      $types = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,1,2,3,4,5,6,7,8,9);
      
      
      for($i=0;$i<=34;$i++){    
          for($j=0;$j<=34;$j++){
              for($h=0;$h<=34;$h++){
                  $text = $types[$i].$types[$j].$types[$h].".ir";
                  
                  $domain = 'http://www2.parstools.com/whois/show/?domain='.$text;
                  $json = file_get_contents($domain); 
                  if(strpos($json,"%ERROR:101: no entries found")){echo $text;}
                          
              }
          }
      }
      
      
      ?>
      در حلقه For سوم که دامنه سه حرفی ایجاد میشود ، به سایت whois مورد نظر متصل میشود ، و اگر پیغام مربوطه مبنی بر عدم ثبت دامنه هست رو مشاهده کرد ، دامنه رو چاپ کرده و به سراغ دامنه بعدی میرود.

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

      ارادتمند
      [align=center][/align]
      [align=center]

      ما زنـ-ـ-ـده به آنیـــم که آرام نگیریم
      موجیم که آسودگی ما عدم ماست

      [/align]

      نظر

      صبر کنید ..
      X