Script pour vérifier la disponibilité d'un domaine

Contenu du snippet

<?php

 

 

	// change it here - if you changed the file name from domaine.php to something else

 

	define('FILE_NAME',					'domaine.php');

 

	// Language settings

 

	define('PAGE_TITLE_META', 			'JeTheberge');			// Title to be used in META tag within HEADER

	define('POWERED_BY',				'http://jetheberge.comxa.com/');			// Text to display in a footer, please do not change if you don't have to

 

	define('MAIN_COMMAND', 				'Enregistrer ou transférer votre domaine!');	// Command in a main window

	define('CHECK_BUTTON', 				'Verifier');									// Check button text

	define('META_CHARSET',				'iso-8859-1');								// Charset to be used in META tags

	define('META_LANGUAGE',				'fr');										// Language to be used in META tags

 

	define('FOOTER_TEXT', 				'');				// text in footer

	define('FOOTER_RELOAD_TEXT',		'');					// text of the link to reload the page

 

	// This is an extra layer displayed during domain search. It is helpfull when someone is

	// searching for all domains at once.

	// If you are not confident with layers at all

	// just disable it - set the first value below to false.

 

	define('WAIT_LAYER_ENABLED',		true);

	define('WAIT_TITLE',				'');

	define('WAIT_MESSAGE',				'');

 

	define('LINK_REGISTER_TEXT',		'Enregistrer');						// Register link text

	define('STATUS_BAR_REGISTER_TEXT',	'Enregistrer');						// Status bar register message - when hovered over the "Register" link

	define('STATUS_BAR_DETAILS',		'Details de');						// Status bar "Details of" - when hovered over "Details" link

	define('LINK_TAKEN_DETAILS',		'Details');							// "Details" text

	define('LINK_TAKEN_GOTO',			'Aller');						// "Goto" text

 

	define('ALL_TEXT',					'tout');						// Text to display for all domains checking

	define('CLOSE_BUTTON_TEXT',			'Fermer la fenetre');					// "Close" button text in a details window

	define('AVAILABLE_TEXT',			'Disponible');						// Text displayed if the domain is available

	define('NOT_AVAILABLE_TEXT',		'Indisponible');						// Text displayed if the domain is not available

 

	define('ERROR_TOO_SHORT',			'Le nom de domaine que vous avez saisi est trop court - il doit contenir au minimum 3 caractères'); 			// Error message if the domain name is too short

	define('ERROR_TOO_LONG',			'Le nom de domaine que vous avez saisi est trop long - il peut contenir 63 caractères maximum');		// Error message if the domain name is too long

	define('ERROR_HYPHEN',				'Les noms de domaine ne peuvent pas commencer ou se terminer par un trait d`union ou contenir des tirets doubles');			// Error message if the domain starts with hyphen or contains double hyphen

	define('ERROR_CHARACTERS',			'Les noms de domaine ne peuvent contenir que des caractères alphanumériques et des traits d`union');								// Error message if the domain contains other characters than letters, digits or hyphens

 

	// DESIGN PARAMETERS

	

	define('MAIN_STYLE','

			BODY {

				background-color: 	#8a8a8a8a;

				color: 				#000000;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

			}

			TD {

				color: 				#000000;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

			}

			

			.available {

				color: 				#006600;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

			}

			

			.notavailable {

				color: 				#FF0000;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

			}

			.separator {

				background-color:	#dddddd;

			}

			.footer {

				color: 				#000080;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			10px;

			}

			.windowborder {

				background-color:	#cccccc;

			}

			.windowinside {

				background-color:	#eeeeee;

			}

			.errors {

				color: 				#FF0000;

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

			}

			A {

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

				color:				#000000;

				text-decoration:	none;

			}

			A:hover {

				font-family: 		"Verdana, Arial, Helvetica";

				font-size: 			12px;

				color:				#FF0000;

				text-decoration:	underline;

			}

			A.footer {

				font-family: 		"Verdana, Arial, Helvetica";

				color: 				#FF0000;

				text-decoration: 	none;

				font-size:			10px;

			}

			A.footer:hover {

				font-family: 		"Verdana, Arial, Helvetica";

				color:				#FF0000;

				text-decoration: 	underline;

				font-size:			10px;

			}

			A.footerreload {

				font-family: 		"Verdana, Arial, Helvetica";

				color: 				#FF0000;

				text-decoration: 	none;

				font-size:			12px;

			}

			A.footerreload:hover {

				font-family: 		"Verdana, Arial, Helvetica";

				color:				#FF0000;

				text-decoration: 	underline;

				font-size:			12px;

			}

			A.footerpowered {

				font-family: 		"Verdana, Arial, Helvetica";

				color: 				#000000;

				text-decoration: 	none;

				font-size:			10px;

			}

			A.footerpowered:hover {

				font-family: 		"Verdana, Arial, Helvetica";

				color:				#FF0000;

				text-decoration: 	underline;

				font-size:			10px;

			}

			

 

 

 

		  ');		// change it to whatever you like

 

	// Define lookup variables

 

 

 

// .fr domains

	define('FR_SERVER', 	'whois.nic.fr');		// server to lookup for domain name

	define('FR_NOMATCH',	'%% No entries found in the AFNIC Database.');								// string returned by server if the domain is not found

	define('FR_INCLUDE',	true);									// include this domain in lookup

 

// .eu domains

	define('EU_SERVER', 	'whois.eu');		// server to lookup for domain name

	define('EU_NOMATCH',	'Status:	AVAILABLE');								// string returned by server if the domain is not found

	define('EU_INCLUDE',	true);									// include this domain in lookup

 

 

	// .com domains

	define('COM_SERVER', 	"whois.verisign-grs.com");			// server to lookup for domain name

	define('COM_NOMATCH',	"No match");							// string returned by server if the domain is not found

	define('COM_INCLUDE',	true);									// include this domain in lookup

 

	// .net domains

	define('NET_SERVER', 	"whois.verisign-grs.com");			// server to lookup for domain name

	define('NET_NOMATCH',	"No match");							// string returned by server if the domain is not found

	define('NET_INCLUDE',	true);									// include this domain in lookup

 

	// .org domains

	define('ORG_SERVER',	'whois.publicinterestregistry.net');	// server to lookup for domain name

	define('ORG_NOMATCH',	'NOT FOUND');								// string returned by server if the domain is not found

	define('ORG_INCLUDE',	true);									// include this domain in lookup

 

	// .info domains

	define('INFO_SERVER',	'whois.afilias.net');					// server to lookup for domain name

	define('INFO_NOMATCH',	'Not found');							// string returned by server if the domain is not found

	define('INFO_INCLUDE',	true);									// include this domain in lookup

 

	// .biz domains

	define('BIZ_SERVER',	'whois.nic.biz');						// server to lookup for domain name

	define('BIZ_NOMATCH',	'Not found');							// string returned by server if the domain is not found

	define('BIZ_INCLUDE',	true);									// include this domain in lookup

 

	// Shall we use register link? (true/false)

	define('REG_LINK',	true);

	// If yes, give the url, it can be your affiliate link

	define('REG_URL',	'http://affiliation.lws-hosting.com/statistics/click/11/12256876');

 

	// Do you want a log file? (true/false)

	define('WANTLOG',	false);

	// If yes, give the log file name here

	// remember to chmod the file to 777 (change permition to writable for everyone)

	define('LOGFILE',	'mrwhois.log');

 

 

/* 

	#################################################################################################################

	End of variables, you do not need to change anythin below this line.

	#################################################################################################################

*/ 

 

 

	if ($_POST['type']!="") define('TYPE', $_POST['type']); else define('TYPE', '');

	if ($_POST['ddomain']!="") define('DDOMAIN', $_POST['ddomain']); else define('DDOMAIN', '');

 

	// This function displays an available domain

	function dispav($what)

	{

		echo '<tr><td nowrap align="center">';

		if (REG_LINK)

		{

			echo '<a href="'.REG_URL.'" target="_blank" onMouseOver="window.status=\''.STATUS_BAR_REGISTER_TEXT.' '.$what.'\';return true" onMouseOut="window.status=\'\';return true">'.LINK_REGISTER_TEXT.'</a>';

		}

		else

			echo ' ';

		echo '</td>

		<td nowrap align="center" class="available"><b>'.$what.'</b></td><td colspan=3> </td></tr>';

   }

 

   // Function to display an unavailable domain with additional links

   function dispun($what,$where)

   {

      echo '<tr>

	  			<td colspan="2"> </td>

	            <td align="center" nowrap class="notavailable"><b>'.$what.'</b></td>

            <td nowrap align="center">

			<a href="'.FILE_NAME.'?action=details&ddomain='.$what.'&server='.$where.'" onMouseOver="window.status=\''.STATUS_BAR_DETAILS.' '.$what.'\';return true" onMouseOut="window.status=\'\';return true" onClick="NewWindow(this.href,\'details\',\'620\',\'400\',\'yes\');return false;">

			'.LINK_TAKEN_DETAILS.'</a></td>

            <td nowrap align="center"><a href="http://www.'.$what.'" target="_blank">'.LINK_TAKEN_GOTO.'</a></td>

            </tr>';

   }

 

   function startborder()

   {

      echo '<table align="center" width="600" border="0" cellspacing="0" cellpadding="0">

            <tr><td width="100%" class="windowborder">

            <table width="600" border="0" cellspacing="1" cellpadding="2">

            <tr><td class="windowinside">';

   }

 

 

   function endborder()

   {

      echo '</td></tr></table></td></tr></table>';

   }

 

   function disperror($text)

   {

      startborder();

      echo '<center><b class="errors">'.$text.'</b></center>';

      endborder();

   }

 

   function main()

   {

      echo '<br>';

      startborder();

      echo '

      <table width="100%" align="center" cellspacing="0" cellpadding="1">

      <tr>

      <td colspan="2" align="center" width="100%"><b>'.MAIN_COMMAND.'</b></td>

      </tr>

      <tr>

      <td align="center">

         <form method="POST" action="'.FILE_NAME.'">

         <input type="hidden" name="action" value="checkdom">

         <input type="hidden" name="type" value="'.TYPE.'">

         <input type="text" name="ddomain" size="30" maxlength="63" value="'.DDOMAIN.'"> 

		 <input type="submit" name="button" value="'.CHECK_BUTTON.'">

      </td>

      <td align="left">

<select name="type">

 

 

 

<option VALUE="fr" id="fr"><label for="fr"> fr</label>

<option VALUE="eu" id="eu"><label for="eu"> eu</label>

<option VALUE="com" id="com"><label for="com"> com</label>

<option VALUE="net" id="net"><label for="net"> net</label>

<option VALUE="org" id="org"><label for="org"> org</label>

<option VALUE="biz" id="biz"><label for="biz"> biz</label>

<option VALUE="info" id="info"><label for="info"> info</label>

<option VALUE="all" id="all"><label for="all"> all</label>

 

 

</option>

</select></form>

 

 

 

 

 

      </td>

      </tr>

      <tr><td colspan="2" align="center" class="footer">'.FOOTER_TEXT.'<br><br>

	  <a class="footerreload" href="'.FILE_NAME.'" target="_self"><b>'.FOOTER_RELOAD_TEXT.'</b></a><br><br>

      <a class="footerpowered" href="http://www.mrscripts.co.uk" target="_blank">'.POWERED_BY.'</a>

      </td></tr>

      </table>';

      endborder();

   }

 

	function pageheader()

	{

		echo '

		<html>

		<head>

			<meta http-equiv="Content-Type" content="text/html; charset='.META_CHARSET.'">

			<meta http-equiv="Content-Language" content="'.META_LANGUAGE.'">

			<title>'.PAGE_TITLE_META.'</title>

			<style>'.MAIN_STYLE.'</style>

			<script type=text/javascript>

			var win= null;

			function NewWindow(mypage,myname,w,h,scroll)

			{

				var winl = (screen.width-w)/2;

			  	var wint = (screen.height-h)/2;

				var settings  ="height="+h+",";

				settings +="width="+w+",";

				settings +="top="+wint+",";

				settings +="left="+winl+",";

				settings +="scrollbars="+scroll+",";

				settings +="resizable=yes";

				win=window.open(mypage,myname,settings);

				if(parseInt(navigator.appVersion) >= 4){win.window.focus();}

			}

			</script>

		</head>

		<BODY>';

	}

	function pagefooter()

	{

		echo '</BODY></HTML>';

	}

 

 

if ($_GET['action'] == "details")

{

	$server = $_GET['server'];

	$ddomain = $_GET['ddomain'];

	pageheader();

	echo '<pre>';

	$fp = fsockopen($server,43);

	fputs($fp, "$ddomain\r\n");

	while(!feof($fp))

	{

		echo fgets($fp,128);

	}

	fclose($fp);

	echo '</pre>';

	echo '<p align="center"><form><input type="button" value="'.CLOSE_BUTTON_TEXT.'" onclick="window.close()"></form>';

	pagefooter();

	exit;

}

 

elseif ($_POST['action']=='checkdom')

{

	if (WAIT_LAYER_ENABLED)

	{

		echo '

		<script language=javascript>

		var ie4 = (document.all) ? true : false;

		var ns4 = (document.layers) ? true : false;

		var ns6 = (document.getElementById && !document.all) ? true : false;

		

		function hidelayer(lay) {

			if (ie4) {document.all[lay].style.visibility = "hidden";}

			if (ns4) {document.layers[lay].visibility = "hide";}

			if (ns6) {document.getElementById([lay]).style.display = "none";}

		}

 

		function showlayer(lay) {

			if (ie4) {document.all[lay].style.visibility = "visible";}

			if (ns4) {document.layers[lay].visibility = "show";}

			if (ns6) {document.getElementById([lay]).style.display = "block";}

		}

		</script>';

 

		echo '

		<script language="javascript">

		var laywidth  = screen.width/2;

		var layheight = screen.height/2;

		var layl   = (screen.width-laywidth)/2;

	  	var layt   = (screen.height-layheight)/2;

		document.write("<div id=\'waitlayer\' align=\'center\' style=\'position:absolute; width:"+laywidth+"px; height:"+layheight+"px; z-index:-1; left:"+layl+"px; top:"+layt+"px; visibility: visible;\'>");

		</script>';

 

  		echo '<center><b>'.WAIT_TITLE.'</b><br><br>

		<a href="'.FILE_NAME.'" target="_self">'.WAIT_MESSAGE.'</a>

		</div>';

	}

 

	// Check the name for bad characters

	if(strlen(DDOMAIN) < 3)

	{

		pageheader();

		disperror(ERROR_TOO_SHORT);

		main();

		pagefooter();

		exit;

	}

	if(strlen(DDOMAIN) > 63)

	{

		pageheader();

		disperror(ERROR_TOO_LONG);

		main();

		pagefooter();

		exit;

	}

	if(ereg("^-|-$",DDOMAIN))

	{

		pageheader();

		disperror(ERROR_HYPHEN);

		main();

		pagefooter();

		exit;

	}

	if(!ereg("([a-z]|[A-Z]|[0-9]|-){".strlen(DDOMAIN)."}",DDOMAIN))

	{

		pageheader();

		disperror(ERROR_CHARACTERS);

		main();

		pagefooter();

		exit;

	}

	pageheader();

	startborder();

 

 

   echo '

      <table width="100%" align="center" cellspacing="0" cellpadding="1">

         <tr>

            <td nowrap align="center" class="separator"><b> </b></td>

            <td nowrap align="center" class="separator"><b>'.AVAILABLE_TEXT.'</b></td>

            <td nowrap align="center" class="separator"><b>'.NOT_AVAILABLE_TEXT.'</b></td>

            <td nowrap align="center" class="separator"><b> </b></td>

            <td nowrap align="center" class="separator"><b> </b></td>

         </tr>';

 

	if ( (TYPE == "all" or TYPE == "fr") and FR_INCLUDE )

	{

		$domname = DDOMAIN.".fr";

		$ns = fsockopen(FR_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(FR_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,FR_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	if ( (TYPE == "all" or TYPE == "eu") and EU_INCLUDE )

	{

		$domname = DDOMAIN.".eu";

		$ns = fsockopen(EU_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(EU_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,EU_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	if ( (TYPE == "all" or TYPE == "com") and COM_INCLUDE )

	{

		$domname = DDOMAIN.".com";

		$ns = fsockopen(COM_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(COM_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,COM_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

	if ( (TYPE == "all" or TYPE == "net") and NET_INCLUDE )

	{

		$domname = DDOMAIN.".net";

		$ns = fsockopen(NET_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(NET_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,NET_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	if ( (TYPE == "all" or TYPE == "org") and ORG_INCLUDE )

	{

		$domname = DDOMAIN.".org";

		$ns = fsockopen(ORG_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(ORG_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,ORG_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	if ( (TYPE == "all" or TYPE == "info") and INFO_INCLUDE )

	{

		$domname = DDOMAIN.".info";

		$ns = fsockopen(INFO_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(INFO_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,INFO_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	if ( (TYPE == "all" or TYPE == "biz") and BIZ_INCLUDE )

	{

		$domname = DDOMAIN.".biz";

		$ns = fsockopen(BIZ_SERVER,43); fputs($ns,"$domname\r\n");

		$result = '';

		while(!feof($ns)) $result .= fgets($ns,128); fclose($ns);

		if (eregi(BIZ_NOMATCH,$result)) { dispav($domname); } else { dispun($domname,BIZ_SERVER); }

		echo '<tr><td colspan="5" class="separator"> </td></tr>';

	}

 

	echo '</table>';

	endborder();

	if (WAIT_LAYER_ENABLED)

	{

		echo '<script language="javascript">

		hidelayer("waitlayer");

		</script>';

	}

 

	// if logging enabled write info to the file

	if(WANTLOG)

	{

		$remote_addr = $REMOTE_ADDR;

		$today = date("d-m-y H:i", time());

		if (file_exists(LOGFILE) and is_writeable(LOGFILE))

		{

			$fp = fopen(LOGFILE,"a+");

			$infolog = "Date: $today | IP: $remote_addr | ".DDOMAIN."\n";

			fputs($fp, $infolog);

			fclose($fp);

		}

	}

	main();

	pagefooter();

}

 

else

 

{

	pageheader();

	main();

	pagefooter();

}

?>

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.