Código PHP:
Ver original
$connection_timeout = 5; $default_extension = ""; $header_title = "WHOIS Lookup"; $header_title_url = $_SERVER["PHP_SELF"]; $internal_style_sheet = 1; $external_style_sheet = 0; $external_style_sheet_location = "/style.css"; $body_font_family = "verdana,arial,sans-serif"; $body_font_size = "80%"; $body_background = "#d4d4d4"; $body_color = "#000000"; $body_padding = "0"; $body_border = "0"; $body_margin = "20px"; $hr_background = "#d4d4d4"; $hr_color = "#d4d4d4"; $link_text_decoration = "underline"; $link_color = "#0000ff"; $link_background = "#ffffff"; $link_hover_text_decoration = "underline"; $link_hover_color = "#0000ff"; $link_hover_background = "#ffffff"; $link_visited_text_decoration = "underline"; $link_visited_color = "#0000ff"; $link_visited_background = "#ffffff"; $link_active_text_decoration = "underline"; $link_active_color = "#0000ff"; $link_active_background = "#ffffff"; $container_background = "#ffffff"; $title_link_font_size = "25px"; $title_link_color = "#000000"; $title_link_text_decoration = "none"; $title_link_background = "#ffffff"; $error_messages_color = "#ff0000"; $form_background = "#f2f2f2"; $form_border = "#d4d4d4"; $response_display_background = "#f2f2f2"; $domain_available_message_color = "#009900"; $supported_extensions = array( ".com.mx" => array("whois_server" => "whois.mx"), ".com" => array("whois_server" => "whois.verisign-grs.com"), ".net" => array("whois_server" => "whois.verisign-grs.com"), ".org" => array("whois_server" => "whois.publicinterestregistry.net"), ); $extensions_array = array_keys($supported_extensions); if ($_SERVER['REQUEST_METHOD'] == "POST") { foreach ($_POST as $key => $value) { $_POST[$key] = strtolower(trim($value)); } $errors = array(); if (!isset($_POST['domain']) || empty($_POST['domain']) || !isset($_POST['extension']) || empty($_POST['extension'])) { $errors[] = "Por favor ingrese un nombre de dominio."; } if (isset($_POST['domain']) && !empty($_POST['domain'])) { // Remove spaces. $_POST['domain'] = str_replace(" ", "", $_POST['domain']); // Check length of domain. if (strlen($_POST['domain']) > 63) { $errors[] = "La longitud maxima del dominio es de 63 caracteres"; } // Check domain for acceptable characters. if (!preg_match('/^[0-9a-zA-Z-]+$/i', $_POST['domain'])) { $errors[] = "El dominio solo puede contener números, letras o guiones. (evitar poner caracteres especiales)."; } // Check domain doesn't begin or end with a hyphen. if (substr(stripslashes($_POST['domain']), 0, 1) == "-" || substr(stripslashes($_POST['domain']), -1) == "-") { $errors[] = "Domain may not begin or end with a hyphen."; } } // Check extension is acceptable. Extension should be lower case at this point for testing in the case-sensitive in_array(). if (!in_array($_POST['extension'], $extensions_array)) { $errors[] = "La extensión de dominio no es compatible."; } if (!count($errors)) { $domain = $_POST['domain']; $extension = $_POST['extension']; $whois_servers = array( "whois.publicinterestregistry.net" => array("port" => "43","query_begin" => "","query_end" => "\r\n","redirect" => "0","redirect_string" => "","no_match_string" => "NOT FOUND","encoding" => "iso-8859-1"), "whois.verisign-grs.com" => array("port" => "43","query_begin" => "domain ","query_end" => "\r\n","redirect" => "1","redirect_string" => "Registrar WHOIS Server:","no_match_string" => "No match for domain","encoding" => "iso-8859-1"), "whois.mx" => array("port" => "43","query_begin" => "domain ","query_end" => "\r\n","redirect" => "1","redirect_string" => "Registrar WHOIS Server:","no_match_string" => "No match for domain","encoding" => "utf-8") // PRO version of this script has more detailed configuration // See a demo of the pro version here: http://whoislookupscript.com/demo_pro_script.php ); $whois_server = $supported_extensions[$extension]['whois_server']; $port = $whois_servers[$whois_server]['port']; $query_begin = $whois_servers[$whois_server]['query_begin']; $query_end = $whois_servers[$whois_server]['query_end']; $whois_redirect_check = $whois_servers[$whois_server]['redirect']; $whois_redirect_string = $whois_servers[$whois_server]['redirect_string']; $no_match_string = $whois_servers[$whois_server]['no_match_string']; $encoding = $whois_servers[$whois_server]['encoding']; $whois_redirect_server = ""; $response = ""; $line = ""; $fp = fsockopen($whois_server, $port, $errno, $errstr, $connection_timeout); if (!$fp) { print "fsockopen() error when trying to connect to {$whois_server}<br><br>Error number: ".$errno."<br>"."Error message: ".$errstr; exit; } fputs($fp, $query_begin.$domain.$extension.$query_end); while (!feof($fp)) { $line = fgets($fp); $response .= $line; // Check for whois redirect server. if ($whois_redirect_check && stristr($line, $whois_redirect_string)) { $whois_redirect_server = trim(str_replace($whois_redirect_string, "", $line)); break; } } fclose($fp); // Query redirect server if set. if ($whois_redirect_server) { // Query the redirect server. Might be different values for port etc, so give the option to change them from those set previously. Using defaults below. $whois_server = $whois_redirect_server; $port = "43"; $connection_timeout = 5; $query_begin = ""; $query_end = "\r\n"; $response = ""; $fp = fsockopen($whois_server, $port, $errno, $errstr, $connection_timeout); if (!$fp) { print "fsockopen() error when trying to connect to {$whois_server}<br><br>Error number: ".$errno."<br>"."Error message: ".$errstr; exit; } fputs($fp, $query_begin.$domain.$extension.$query_end); while (!feof($fp)) { $response .= fgets($fp); } fclose($fp); } // Check result for no-match phrase. $domain_registered_message = ""; if (stristr($response, $no_match_string)) { $domain_registered_message = "<span class=\"noregistrado\"><b>En hora Buena " . htmlentities($domain . $extension) . " esta disponible registralo antes que te lo ganen</b></span>"; } else { $domain_registered_message = "<span class=\"registrado\"><b>Ups!! " . htmlentities($domain . $extension) . " ya esta registrado intenta con otro nombre</b></span>"; } } } // Set a default encoding for the form page. If a WHOIS server uses a particular encoding it will be set above if the form is posted without errors. if (!isset($encoding)) { $encoding = "UTF-8"; } ?> <div class="whois"> <h2>Piensa el Nombre de tu Sitio Web y Checa si esta Libre</h2> <div class="whoiscont"> <?php // Print any errors. foreach ($errors as $value) { } } ?> <form action="<?php print htmlspecialchars($_SERVER["PHP_SELF"]) ?>" method="post" autocomplete="off"> <div id="lookup_form"> <b style="font-size: 30px;color:#FFF;font-family: calibri;margin: 0px 5px auto auto;padding: 0px;display: block;vertical-align: middle;float: left;">www. </b><input type="text" name="domain"> <select name="extension"> <?php foreach ($extensions_array as $value) { $selected = ? 'selected' : ''; } ?> </select> <button>Verificar</button> </div> </form> </div> <?php print "<br/>${domain_registered_message}"; } } if ($_SERVER['REQUEST_METHOD'] == "GET") { ?> <?php } ?> </div> </body> </html>