2014-02-23 35 views
-2

我有一個基本的域檢查器,返回'這個域是免費的'或'這個域不可用'的信息。但我如何提出建議?域檢查器如何做建議?

可以說訪問者檢查'www.stackoverflow.com'是否可用。當它可用時,沒有問題,用戶可以訂購它。當它不可用時,我希望它爲其他擴展提供建議。像:

www.stackoverflow.com is not available, 

The following domains are available: 
www.stackoverflow.net 
www.stackoverflow.co.uk 
www.stackoverflow.info 

這是我當前文件:

<?php 
if(isset($_POST['check'])) { 

    if (!empty($_POST['domain_name'])){ 
     $domain = trim($_POST['domein_naam']).$_POST['domain_list']; 
     $result = @dns_get_record($domain, DNS_ALL); 

      if(empty($result)) { 
       echo "<H2 style='color:green;' >Domain $domain is available.</H2>"; 
      } else { 
       echo "<H2 style='color:red;'>Domain $domain is not available.</H2>"; 
      } 

    } else { 
    echo "<H2 style='color:red;'>Fout: Domein kan niet leeg zijn.</H2>"; 
    } 

} 
?> 

回答

0

不知道所有的代碼結構很難給你最好的方法。
但是一個簡單的想法:

說用戶輸入的網站($ _POST/$ _ GET/etc)存儲在$strUserSite變量中。

有一個數組($aryFurtherChecks或其他)(.com,.net等所有擴展名)。

通過將您的$strUserSite var附加到它,循環檢查每個域用戶輸入的內容是否有效。
如果可以使用來自數組的域+擴展,則可以將其回顯出來(取決於您的代碼設置/框架等)或添加到新數組中,然後使用「這些也可用」來循環第二個數組。

你使用哪種方法取決於如果您正在使用的程序的所有功能於一身的文件代碼,或者類等
如果是後者則創下了新的陣列將是首選,在您看來環路,/模板/任何文件並用HTML和樣式等回顯每一個。

0

dns_get_record()無法用於確定域是否可用於註冊,因爲並非所有註冊的域都具有DNS記錄。例如,example.info已註冊,但沒有DNS記錄。

由於您聽起來好像您打算將其用作域註冊系統的一部分,您可能有權訪問域註冊API。這些API的大多數提供者都會打電話來生成建議 - 嘗試使用它。否則,您需要從用戶輸入的域中刪除頂級域名(TLD),並將其替換爲您想要嘗試的替代方案。