Checking Domain Availability

Below is a script for checking domain availabilityL

<?
error_reporting(0);
set_time_limit(0);
ob_start();

$ext = array(
'.com' => array('whois.crsnic.net','No match for'),
'.net' => array('whois.crsnic.net','No match for'),
'.biz' => array('whois.biz','Not found'),
'.mobi' => array('whois.dotmobiregistry.net', 'NOT FOUND'),
'.tv' => array('whois.nic.tv', 'No match for'),
'.in' => array('whois.inregistry.net', 'NOT FOUND'),
'.info' => array('whois.afilias.net','NOT FOUND'),
'.co.uk' => array('whois.nic.uk','No match'),
'.co.ug' => array('wawa.eahd.or.ug','No entries found'),
'.or.ug' => array('wawa.eahd.or.ug','No entries found'),
'.nl' => array('whois.domain-registry.nl','not a registered domain'),
'.ro' => array('whois.rotld.ro','No entries found for the selected'),
'.com.au' => array('whois.ausregistry.net.au','No data Found'),
'.ca' => array('whois.cira.ca', 'AVAIL'),
'.org.uk' => array('whois.nic.uk','No match'),
'.name' => array('whois.nic.name','No match'),
'.us' => array('whois.nic.us','Not Found'),
'.ac.ug' => array('wawa.eahd.or.ug','No entries found'),
'.ne.ug' => array('wawa.eahd.or.ug','No entries found'),
'.sc.ug' => array('wawa.eahd.or.ug','No entries found'),
'.ws' => array('whois.website.ws','No Match'),
'.be' => array('whois.ripe.net','No entries'),
'.com.cn' => array('whois.cnnic.cn','no matching record'),
'.net.cn' => array('whois.cnnic.cn','no matching record'),
'.org.cn' => array('whois.cnnic.cn','no matching record'),
'.no' => array('whois.norid.no','no matches'),
'.se' => array('whois.nic-se.se','No data found'),
'.nu' => array('whois.nic.nu','NO MATCH for'),
'.com.tw' => array('whois.twnic.net','No such Domain Name'),
'.net.tw' => array('whois.twnic.net','No such Domain Name'),
'.org.tw' => array('whois.twnic.net','No such Domain Name'),
'.cc' => array('whois.nic.cc','No match'),
'.nl' => array('whois.domain-registry.nl','is free'),
'.pl' => array('whois.dns.pl','No information about'),
'.pt' => array('whois.dns.pt','No match')
);
function return_status($domain, $status)
{
global $extension;
$domain = trim($domain);
$wt = ($status == 'available') ? 'bold' : 'normal';
if($status == 'invalid' && $extension == 'org') { $status .= ' (.org WHOIS prevents request)'; }

echo "<div style=\"font-weight:$wt\">$domain is $status!</div>";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Check Your Domain Availability</title>
</head>
<body>
<table width="75%" border="0" align="center" cellpadding="5" cellspacing="1">
<tr>
<td height="30" align="center"><h3>Check Your Domain Availability</h3></td>
</tr>
<tr>
<td align="center"><form action="" method="post" name="frmsearchposition" class="frmstyle" id="frmsearchposition">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr align="left">
<td width="20%" align="left" valign="middle">You can insert one or some domains - 1 per line. (ex: yahoo.com) </td>
<td width="40%"><textarea name="domains" cols="55" rows="5" class="frmelements_ta" id="domains"><?=$sUrl?>
</textarea></td>
<td><input type="submit" name="Submit" value="Go" /></td>
</tr>
</table>
</form></td>
</tr>

<tr>
<td width="70%" align="left" valign="top">
<table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
<tr>
<td align="left"><h3>Results</h3></td>
</tr>
<tr>
<td align="left" class="tbl_texttd"><table width="740" border="0" cellspacing="0" cellpadding="2">
<tr>
<td align="left"><?
if(strlen($_POST['domains']) > 0)
{
$domains = explode("\n", $_POST['domains']);
echo '<h5>Checking ' . count($domains) . ' domains:</h5><br />';
echo (isset($_POST['save'])) ? 'Processing results, Please wait...<br /><br />' : null;

foreach($domains as $domain)
{
unset($buffer);
preg_match('@^(http://www\.|http://|www\.)?([^/]+)@i', $domain, $matches);
$domain = $matches[2];

$tld = explode('.', $domain, 2);
$extension = strtolower(trim($tld[1]));

if(strlen($domain) > 0 && array_key_exists('.' . $extension, $ext))
{
$server = $ext['.' .$extension][0];

$sock = fsockopen($server, 43) or die('Error Connecting To Server:' . $server);
fputs($sock, "$domain\r\n");

while( !feof($sock) )
{
$buffer .= fgets($sock,128);
}

fclose($sock);
if($extension == 'org') echo nl2br($buffer);

if(eregi($ext['.' . $extension][1], $buffer)) { return_status($domain, 'available'); }

else { return_status($domain, 'taken'); }
}
else
{
if(strlen($domain) > 0) { return_status($domain, 'invalid'); }
}

ob_flush();
flush();
sleep(0.1);
}

}
else
{
echo 'Please enter one or more domains!';
}
?>
<div class="div"></div></td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>

2 comments:

Shahbaz Ahmed said...

what a Surprise Code? i like it so much. i offer my Salam to the Author of the Code.Thank u So much Sir.
Thanks a lot
Thanks a Lot
Basically i m Student of Inter and PArt Time Takes web development Class.i really happy to get that Gift
Thank a Lot Sir

domain and hosting services india said...

Excellent comments have been done here.This is the great site which i was searching from long time.
domain hosting india