کمک در ساخت whois

mohammad-s

Member
سلام .
من قصد دارم یک whois بسازم که چند دومین را با هم چک کنه و بگه ثبت شده یا نه ...
همه چیزش رو بلدم اینکه چه طوری بگرده ، ثبت شده یا نه و اطلاعات ثبت دومین و این چیزا
مشکلی که هست اینه که نمی دونم چه طوری چند دومین رو با هم جستجو کنه
می دونم هم که با حلقه باید این کار رو بکنم ولی چه جوریش رو نفهمیدم :-?
خواهشا هم نگید که از اسکریپت آماده استفاده کنم می خوام خودم بسازم ... ممنون میشم کمک کنید :oops:
موفق باشید
 
آخرین ویرایش:

jhoseini

Member
مشکلتون کجاشه؟
فکر میکنم وقتی بتونید یکی یکی چک کنید، اضافه کردن یه حلقه ی for یا چیزی شبیه به این زیاد سخت نیست
271.gif
 

mohammad-s

Member
خب دیگه مشکل من همینه ...
من با switch یکی یکی چک می کنم و واسه هر دومین هم به سایت whois مربوطش وصل میشم ولی حقیقاتا تو این حلقه گیر کردم ، گیج شدم .. !
 

hidensoft

Member
خیلی سادست .. شما می خوای دامنه yahoo رو با com , org , net , ir جست و جو کنی با یه حلقه while می تونی خیلی راحت به جواب برسی .. کدت رو بزار اینجا برات درستش کنم ..
 

super_php

Member
خيلي سادست فقط كافيه كه پسوند هاتو با جاهايي كه ازشون هويز ميگيري رو مشخص كني بعد با يه حلقه فورايچ دونه دونه هويز بگيري

PHP:
<?php

	$base = array(
					"ir" 	=> "whois.nic.ir",
					"com" 	=>	"whois.domaintools.com",
					...
				  );
				  
				  
	foreach($base as $tld => $wst)
	{
		
		/*
			$tld = ir, com, ...
			$wst = whois.nic.ir , whois.domaintools.com , ...
		*/
		
		// TO DO
	
	}

?>
 

mohammad-s

Member
کدم اینه :

PHP:
$status="";
//submit
if(isset($_POST['Submit'])){
$domain=$_POST['domain'];
$ext=$_POST['ext'];
$whoisServer="";
switch($ext){
case ".com":
case ".net":
case ".edu":
$whoisServer="whois.internic.net";
break;
case ".org":
$whoisServer="whois.publicinterestregistry.net";
break;
case ".biz":
$whoisServer="whois.neulevel.biz";
break;
case ".info":
$whoisServer="whois.afilias.info";
break;
case ".ir":
case ".id.ir":
case ".co.ir":
case ".net.ir":
case ".ac.ir":
case ".gov.ir":
case ".org.ir":
case ".ach.ir":
$whoisServer="whois.nic.ir";
break;
//insert new whois servers here
default: 
$whoisServer= "whois.networksolutions.com"; 
}
//domian name is valid
if(namecheck($domain)){
	if(($output=dolookup($domain.$ext, $whoisServer))){
	
		if(!($data=check_exist($output))){
			$status='<font color=green dir=rtl>خوشبختانه اين دامنه هنوز ثبت نشده است.بهتر است هر چه سريعتر براي ثبت آن اقدام کنيد</font>';
			          
		}else{
			$status="<font color=red dir=rtl>متاسفانه اين دامنه قبلا توسط شخص ديگري ثبت شده است.</font> <br> {$data}";
		}
	}

}
}
//functions
//This checks the name for invaild characters
function namecheck($domain)
{
    if($domain==""){echo"لطفا نام دامنه مورد نظر خود را وارد کنيد<br>\n";
     return false;}
    if(strlen($domain)< 3){echo"The domain name  <b>$domain</b>  is too short"; return false;}
    if(strlen($domain)>57){echo"The domain name  <b>$domain </b>  is too long"; return false;}
    if(@ereg("^-|-$",$domain)){echo"Domains cannot begin or end with a hypen"; return false;}
    if(!ereg("([a-z]|[A-Z]|[0-9]|-){".strlen($domain)."}",$domain))
    {echo"Domain names cannot contain special characters"; return false;}
	return true;

}
//
function check_exist($output)
{
	//compare what has been returned by the server
    if (eregi("Can't get information",$output) || eregi("No entries found",$output) || eregi("NOT FOUND",$output) || eregi("No match",$output) ){
        return 0;
    }else{
        return nl2br($output);
    }
}
//
	function dolookup($domain, $server){
		$domain = strtolower($domain);
		$server = strtolower($server);
		if( $domain == '' || $server == '' ) return false;
		$data = "";
		$fp = @fsockopen($server, 43,$errno, $errstr, 5);
		if( $fp ){
			@fputs($fp, $domain."\r\n");
			@socket_set_timeout($fp, 30);
			while( !@feof($fp) ){
				$data .= @fread($fp, 4096);
			}
			@fclose($fp);
			return $data;
		}else{
			echo "\n\Error - could not open a connection to <b>$server</b>\n\n";
			return 0;
		}
	}
echo $status;

از کمک هاتون ممنون ...
 

EMIRATES

Active Member
با سلام

لطفا اسپم نده دوست عزیز.

دقیقا 2 روزدیگه این تاپیک میشه مال 1 سال پیش.

لطفا آقا صادق - تاپیکو ببندین.

با تشکر.
 

yakoza

Well-Known Member
سلام
حقیقتش وقت ندارم کدتو ببینم ولی تنها چیزی که الان به ذهنم میرسه شی گراییه

اگه بلدی کل اینا رو به صورت class دربیار و موقع whois گرفتن هر چند تا که خواستی object بساز
اگه تونستی که هیچ اگه نه بگو من یا بچه های دیگه برات بنویسن
 

جدیدترین ارسال ها

بالا