Script dibawah ini adalah untuk memeriksa sebuah domain apakah sudah ada yang punya atau tidak. Sebenarnya ada script sederhana yang sering digunakan orang tapi setelah saya pakai ternyata ada kekurangannya. Ada beberapa domain yang sebenarnya sudah pernah diregister tapi sudah tidak dipakai lagi seharusnya tidak bisa statusnya not available namun dengan script yang biasa digunakan dengan menggunakan fungsi gethostbynamel() ternyata hasilnya available.
Nah script dibawah ini tidak lagi terjadi kesalahan demikian.
Simpan script dibawah ini dengan nama misalnya cekdomain.php
lalu untuk menjalankannya dengan cara mengakses http://domainanda.com/cekdomain.php?dmn=namadomain.com
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); $weight = ($status == 'available') ? 'bold' : 'normal'; $color = ($status == 'available') ? 'green' : 'red'; $decoration = ($status == 'invalid' && $extension == 'org') ? 'underline' : 'none'; if($status == 'invalid' && $extension == 'org') { $status .= ' (Domain .org WHOIS prevents request)'; } echo "$status"; } ?> $domains=$_GET['dmn']; if(!empty($domains)) { $domains = explode("\n", $domains); 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('Terjadi Kesalahan silahkan ulangi lagi' . $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, 'not available'); } } else { if(strlen($domain) > 0) { return_status($domain, 'invalid'); } } ob_flush(); flush(); sleep(0.1); } } else { echo 'Terjadi Kesalahan silahkan ulangi lagi'; } ?>
(Visited 554 times, 1 visits today)