الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في دالة فحص الدومين

بدأه هالي الدهوكي في 11 فبراير 2012 · 8 رد · 1,490 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا يا شباب كيف الحال ...

طبعا اسف لكثرة اسألتي لكن اذا لم اسأل فلم اتعلم .. و بمساعدتكم الجميلة ساتعلم

عندي سكربت هو لفحص الدومين .

<?php
    function checkDomain($domain,$server,$findText){
        // Open a socket connection to the whois server
        $con = fsockopen($server, 43) or die("1");
        if (!$con) return false;

        // Send the requested doman name
        fputs($con, $domain."\r\n") or die("2");

        // Read and store the server response
        $response = ' :';
        while(!feof($con)) {
            $response .= fgets($con,128) or die("3"); 
        }

        // Close the connection
        fclose($con);

        // Check the response stream whether the domain is available
        if (strpos($response, $findText)){
            return true;
        }
        else {
            return false;   
        }
    }

    function showDomainResult($domain,$server,$findText){
       if (checkDomain($domain,$server,$findText)){
          echo "<tr><td>$domain</td><td>متوفر</td></tr>";
       }
       else echo "<tr><td>$domain</td><td>محجوز</td></tr>";
    }
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
   <title>البحث عن دومين</title>
   <link href="style/style.css" rel="stylesheet" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
</head>
<body>
    <div id="main">
      <div id="caption">البحث عن نطاق</div>
      <div id="icon"> </div>
      <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="domain" id="domain">
        الرجاء إدخال أسم موقعك المقترح لمعرفة إمكانية تسجيله
        <table>
          <tr><td><input class="text" name="domainname" type="text" size="36"/></td></tr>
          <tr>
            <td>
                <input type="checkbox" name="all" checked />الجميع
                <input type="checkbox" name="com"/>.com
                <input type="checkbox" name="net"/>.net
                <input type="checkbox" name="org"/>.org
                <input type="checkbox" name="info"/>.info
            </td></tr>
            <tr><td align="center"><br/><input class="text" type="submit" name="submitBtn" value="بدء البحث"/></td></tr>
        </table>  
      </form>

<?php    
    if (isset($_POST['submitBtn'])){
        $domainbase = (isset($_POST['domainname'])) ? $_POST['domainname'] : '';
        $d_all      = (isset($_POST['all'])) ? 'all' : '';    
        $d_com      = (isset($_POST['com'])) ? 'com' : '';    
        $d_net      = (isset($_POST['net'])) ? 'net' : '';    
        $d_org      = (isset($_POST['org'])) ? 'org' : '';    
        $d_info     = (isset($_POST['info'])) ? 'info' : '';    

        // Check domains only if the base name is big enough
        if (strlen($domainbase)>2){
?>


        <table width="100%" border="1">
<?php        
            if (($d_com != '') || ($d_all != '') ) showDomainResult($domainbase.".com",'whois.crsnic.net','No match for');
            if (($d_net != '') || ($d_all != '') ) showDomainResult($domainbase.".net",'whois.crsnic.net','No match for');
            if (($d_org != '') || ($d_all != '') ) showDomainResult($domainbase.".org",'whois.publicinterestregistry.net','NOT FOUND');
            if (($d_info != '') || ($d_all != '') ) showDomainResult($domainbase.".info",'whois.afilias.net','NOT FOUND');
?>
        </table>
     </div>

<?php            
        }
    }
?>    
</body>

هذا السكربت الكامل لكن المشكلة فيه انه

في السيرفر الملي يقرأ بدون مشاكل لكن عند تحميله في السيرفر الغير محلي يعني سيرفر للموقع الخاص به عند فحص اي دومين يضهر لي هذا الخطء .

Warning: fsockopen() [function.fsockopen]: unable to connect to whois.crsnic.net:43 (Connection timed out) in /home/a2968951/public_html/iq/whois2/index.php on line 4

و شكرا جزيلا لكم .... مع تحياتي لكم ....

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#2

هذا الموقع لا يعمل :

whois.crsnic.net

أي لا يمكن الاستعلام عن الدومينات

سبحان الله و بحمده :: سبحان الله العظيم

#3

طيب ان كان لا يعمل فلماذا السكربت يعمل في سيرفر الشخصي بدون اي مشاكل نهائيا .

فقط عند رفعه على الموقع يضهر لي هذا الخطء ان كانت المشكلة منه فأكيد فلم يعمل في السيرفر المحلي ايضا صح او لا ؟

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#4

ربما ان الموقع يعمل بدون مشاكل ولكنه يقرأ الريفير وإذا كان من لوكال يقوم بالسماح أما من غير ذلك فيعمل رفض , هذه الطريقه تعطى كديمو للسكريبت ومنها سكريبت عرض درجات الحراره على اللوكال تعمل بدون مشاكل ولكن على سيرفر لاتعمل وطريقه حلها هو بالدفع للشركه المزوده للخدمه حتى تسمح للآي بي الخاص بموقعك بالمرور ...

يمكنني إنشاء api كخدمه لك ولغيرك تعمل على فحص الدومين , عندما أتفرغ قليلا سأقوم بإعطاءك الكود وهو يعمل 100% بإذن الله

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#5

من الممكن ان المشكلة في البورت 43 حيث انه مغلق من قبل شركة الاستضىافة حيث ان هذا البورت مستخدم في السكريبت .

انا استخدم السكريبت whois lookup script وهو يعمل بشكل طبيعي في الاستضافة لدي .يمكنك تجريبه .

#6

جرب الدالة التالية شغاله 100% استخدمت فيها الـ API الخاص بموقع whoisxmlapi.com

function domainAv($domainName)
{
  $domain = $domainName;
  $username = "mbo77";
  $password = "123456";
  $contents = file_get_contents("http://www.whoisxmlapi.com//whoisserver/WhoisService?domainName=$domain&cmd=GET_DN_AVAILABILITY&username=$username&password=$password&outputFormat=JSON");
  $res=json_decode($contents);
  $domainInfo = $res->DomainInfo;
  if($domainInfo){
    if($domainInfo->domainAvailability == 'AVAILABLE')
		return true;
	else
		return false;
  }
}

// example
if(domainAv("mbo17.net"))
	echo "AVAILABLE";
else 
	echo "UNAVAILABLE";

لمزيد من التفاصيل حول ال API من الرابط التالي :

http://www.whoisxmlapi.com/index.php

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#7
بسام العيساوي كتب:

ربما ان الموقع يعمل بدون مشاكل ولكنه يقرأ الريفير وإذا كان من لوكال يقوم بالسماح أما من غير ذلك فيعمل رفض , هذه الطريقه تعطى كديمو للسكريبت ومنها سكريبت عرض درجات الحراره على اللوكال تعمل بدون مشاكل ولكن على سيرفر لاتعمل وطريقه حلها هو بالدفع للشركه المزوده للخدمه حتى تسمح للآي بي الخاص بموقعك بالمرور ...

يمكنني إنشاء api كخدمه لك ولغيرك تعمل على فحص الدومين , عندما أتفرغ قليلا سأقوم بإعطاءك الكود وهو يعمل 100% بإذن الله

انتضرك اخي العزيز ....

و كذالك سأقوم بتجربة سكربت للأخ العزيز M.B.O

و سأراجع المعلومات للاخ TareqVB

Professional Technology Information

HTML , CSS , PHP , JQuery , Action Script

Photographic Designer & websites Designer : Dinamic Sites & photographic Sites & Flash Sites

IF YOU WANT SEE MY WORKS

VISIT THIS LINK

Prince Designs

#8

تم العمل :

http://api.urorbit.com/?domain=bassam&ltd=com

النتيجه ملف json بحتوي على حاله الدومين ومعك معظم الإكستنشن المعروفه يعني

com , net , org , ...

CMS Sfhati , Website Generator


نظام إدارة المحتوى صفحتي ... جربه الآن 


 


small-logo.png

#9

السلام عليكم

من فضلكم ياجماعة انا عايز اضيف صندوق البحث عن الدومين ولكن مش عارف اقوم بضبط مشاركتكم ربما لاني مبتدئ فارجو من حضراتكم ذكر الكود او الاسكربت بشكل نصي او في ملف تكست وطريقة تركيبه علي موقعي بشكل سليم وبالتفصيل الدقيق 

 

شكرا لكم

مواضيع مشابهة