Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
<?
function whois ($domain, $tipo)
{ $buffer=""; $dados="";
$server[0] = "whois.registro.br";
$server[1] = "whois.internic.net";
$server[2] = "whois.networksolutions.com";
$domain = strtolower($domain);
if (trim($domain) <> "")
{
$domain = trim($domain);
$final = substr($domain, -4);
if (substr("$domain", -3) == ".br")
{
$br = fsockopen($server[0], 43, $errno, $errstr, 30);
if (!$br)
{
$dados .= "$errstr ($errno)";
}
else {
fputs($br, "$domain\r\n");
while (!feof($br))
{
$buffer .= fread($br,128);
}
if ($tipo == 1)
{
if (strpos($buffer, "No match for") > 0) $dados .= false; else $dados .= true;
}
else {
$dados .= str_replace("\n","<BR>\n",trim($buffer));
}
fclose ($br);
}
}
elseif (($final == '.com') OR ($final == '.net') OR ($final == '.org') OR ($final == '.edu'))
{
$internic = fsockopen($server[1], 43, $errno, $errstr, 30);
if (!$internic)
{
$dados .= "$errstr ($errno)";
}
else {
fputs($internic, "$domain\r\n");
while (!feof($internic))
{
$buffer .= fread($internic,128);
}
if ($tipo == 1)
{
if (strpos($buffer, "No match for") > 0) $dados .= false; else $dados .= true;
}
else {
if (strpos($buffer, "No match for") > 0)
{
$dados .= "<pre>" . trim($buffer) . "</pre>";
}
else {
$servidor = substr($buffer, strpos($buffer, "Whois Server:")+14, strlen($buffer));
$servidor = substr($servidor, 0, strpos($servidor, "\n"));
$entidade = fsockopen("$servidor", 43, $errno, $errstr, 30);
if (!$entidade)
{
$dados .= "$errstr ($errno)";
}
else {
$buffer .= "-------------------------------------------------------------------------------<BR> <BR>";
fputs($entidade, "$domain\r\n");
while (!feof($entidade))
{
$buffer .= fread($entidade,128);
}
$dados .= str_replace("\n","<BR>\n",trim($buffer));
fclose ($entidade);
}
}
}
fclose ($internic);
}
}
else {
$network = fsockopen($server[2], 43, $errno, $errstr, 30);
if (!$network)
{
$dados .= "$errstr ($errno)";
}
else {
fputs($network, "$domain\r\n");
while (!feof($network))
{
$buffer .= fread($network,128);
}
if ($tipo == 1)
{
if (strpos($buffer, "NOT FOUND") > 0) $dados .= false; else $dados .= true;
}
else {
$dados .= str_replace("\n","<BR>\n",trim($buffer));
}
fclose ($network);
}
}
}
return $dados;
}
?>
<? if (!empty($_POST["nomeUsuario"])) { $dominio=$_POST["nomeUsuario"].$_POST["extencao"]; ?>
<? if (whois($dominio,1) == 1) echo "DOMINIO REGISTRADO"; else
echo "1";?>
<? } ?>
Galera, consegui esse código na internet. Ele faz a pesquisa de dominios .com, .br, .org, .edu, .net, mas ele não faz a pesquis de dominios .aero, .arpa, .biz, .coop, .info, .int,... Alguem pode me ajudar arrumar isso?
Poxa, sou novo também, mas acho que uma expressão regular ajudaria.
Dá uma lida e veja se resolve!
:)
Tópico mesclado com o tópico antigo.
Favor não duplicar seus tópicos
Me ajuda aí, galera. Por favor.
Me ajuda aí, galera. Por favor.
Já começou pela sugestão que dei? Encontre os sites que fornecem serviço de WHOIS para os TLDs que você listou. Isso é o começo.
Tendo a lista em mãos, aí sim vem a parte de programação
Esse código simplesmente faz um WHOIS em vários servidores. Você precisa ver qual serviço de WHOIS permite consulta a esses TLDs que citou e incluir no código.
PS: Seu script escreve tudo em um arquivo para depois ler do arquivo e mostrar na tela. Seria mais simples e rápido (em termos de tempo de execução) mostrar direto na tela.