0
$dname = "accurst.com";
$recordexists = checkdnsrr($dname, "ANY");

if ($recordexists) 
  echo $dname." is taken. Sorry!<br>";
else 
  echo $dname." is available!<br>";

これは、間違った情報を返すドメインの例です。利用可能と書いてありますが、ドメインは2800ドルのプレミアムドメイン名です。誰にも解かれていませんので、利用できないことを示す方法はありますか?言い換えれば、私が調べた場合:accurstttt.comが利用可能になり、accurst.comは次のように言う必要があります:利用不可他の別のドメイン名を試しましたが、プレミアムである間は利用可能であることが表示され続けます。任意の入力は非常に役立ちますありがとう

4

2 に答える 2

2
<?php

function checkDomainAvailability($domain_name){

$server = 'whois.crsnic.net';

// Open a socket connection to the whois server
$connection = fsockopen($server, 43);
if (!$connection) return false;

// Send the requested doman name
fputs($connection, $domain_name."\r\n");

// Read and store the server response
$response_text = ' :';
while(!feof($connection)) {
$response_text .= fgets($connection,128);
}

// Close the connection
fclose($connection);

// Check the response stream whether the domain is available
if (strpos($response_text, 'No match for')) return true;
else return false;
}


$domainname = 'accurst.com';

if(checkDomainAvailability($domainname)) echo 'Domain : '.$domainname.' is Available';
else echo 'Domain : '.$domainname.' is Already Taken';

?>
于 2013-03-04T06:29:22.617 に答える
1

残念ながら機能:

returns FALSE if no records were found or if an error occurred.

したがって、「結果がない」ということは、決定的なことを意味するものではありません。

また、A レコードと CNAME レコードも探します。たとえば、次のようになります。

$dname = "accurst.com";
echo checkdnsrr($dname, "A");

プリント 1

于 2013-03-04T06:03:55.500 に答える