Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > เรื่อง code check domain ครับ มีปัญหาตรงพวกดอทในประเทศไทยอ่ะครับ



 

เรื่อง code check domain ครับ มีปัญหาตรงพวกดอทในประเทศไทยอ่ะครับ

 



Topic : 081819



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook Hi5 Blogger



Code นะครับ

Code (PHP)
<?php
function checkDomain($domain,$server,$findText){
// Open a socket connection to the whois server
$con = fsockopen($server, 43);
if (!$con) return false;

// Send the requested doman name
fputs($con, $domain."\r\n");

// Read and store the server response
$response = ' :';
while(!feof($con)) {
$response .= fgets($con,128); 
}

// Close the connection
fclose($con);

// Check the response stream whether the domain is available
if (strpos($response, $findText)){
return true;
}
else {
return false; 
}
}

function showDomainResult($domain,$server,$findText){
if (checkDomain($domain,$server,$findText)){
echo "<tr><td>$domain</td><td><span style='color:#0C3'>AVAILABLE</span></td></tr>";
}
else echo "<tr><td>$domain</td><td><span style='color:#F00'>TAKEN</span></td></tr>";
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>MicroWhois domain checker</title>
</head>
<body>
<div id="main">
<div id="caption">DOMAIN LOOKUP</div>
<div id="icon">&nbsp;</div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="domain" id="domain">
Domain name:
<table>
<tr><td><input class="text" name="domainname" type="text" size="36"/></td></tr>
<tr>
<td>
<input type="checkbox"name="all" checked />
<input type="checkbox"name="com"/>.com
<input type="checkbox" name="net"/>.net
<input type="checkbox" name="org"/>.org
<input type="checkbox" name="info"/>.info
<input type="checkbox" name="coth"/>.coth
<input type="checkbox" name="inth"/>.int.h
</td></tr>
<tr><td align="center"><br/><input class="text" type="submit" name="submitBtn" value="Check domain"/></td></tr>
</table> 
</form>
<?php 
if (isset($_POST['submitBtn'])){
$domainbase = (isset($_POST['domainname'])) ? $_POST['domainname'] : '';
$d_all = (isset($_POST['all'])) ? 'all' : ''; 
$d_com = (isset($_POST['com'])) ? 'com' : ''; 
$d_net = (isset($_POST['net'])) ? 'net' : ''; 
$d_org = (isset($_POST['org'])) ? 'org' : ''; 
$d_info = (isset($_POST['info'])) ? 'info' : '';
$d_coth = (isset($_POST['coth'])) ? 'coth' : '';
$d_inth = (isset($_POST['inth'])) ? 'inth' : '';	
$d_inth = (isset($_POST['goth'])) ? 'goth' : '';	

// Check domains only if the base name is big enough
if (strlen($domainbase)>1){
?>
<div id="caption">RESULT</div>
<div id="icon2">&nbsp;</div>
<div id="result">
<table width="100%">
<?php 
if (($d_com != '') || ($d_all != '') ) showDomainResult($domainbase.".com",'whois.crsnic.net','No match for');
if (($d_net != '') || ($d_all != '') ) showDomainResult($domainbase.".net",'whois.crsnic.net','No match for');
if (($d_org != '') || ($d_all != '') ) showDomainResult($domainbase.".org",'whois.publicinterestregistry.net','NOT FOUND');
if (($d_info != '') || ($d_all != '') ) showDomainResult($domainbase.".info",'whois.afilias.net','NOT FOUND');
if (($d_coth != '') || ($d_all != '') ) showDomainResult($domainbase.".co.th",'whois.thnic.net','No entries');
if (($d_inth != '') || ($d_all != '') ) showDomainResult($domainbase.".in.th",'whois.thnic.net','No entries found');	
?>
</table>
</div>
<?php 
}
}
?> 
<div id="source">Micro Whois 1.1</div>
</div>
</body>


คือจริงๆ ผมโหลดมา แล้วปรับให้มี .co.th กับ .in.th อ่ะครับ โดยเปลี่ยน whois.crsnic.net ให้ เป็น whois.thnic.net ตามความรู้ทั่วไปที่หาทาง net ผลคือ ทุกครั้งที่ check เว็บอะไร ที่เป็น .co.th กับ .in.th จะไม่ว่างเสมอ ทั้งๆ ที่ จริงๆ แล้ว อาจจะว่างก็ได้ ต้องแก้ไขยังไงครับ

ขอบพระคุณล่วงหน้าครับ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-08-01 16:17:06 By : Black_Hawk View : 1833 Reply : 7
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ปกติพวกนี้มันใช้การตรวจสอข้อความที่ถูกส่งกลับมาครับ ลองดูว่าใช้ whois.thnic.net มัน return ค่ากลับมาเป็นอะไร ลองเช็คโดเมนที่ว่าง กับไม่ว่าง แล้วดูค่าที่ได้ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-01 21:43:51 By : mr.win
 


 

No. 2



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook Hi5 Blogger

ทุกครั้งที่ Check อะไรที่เกี่ยวกับ whois.thnic.net จะไม่ว่างเสมอเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-03 18:41:53 By : Black_Hawk
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
echo $response;


มันได้ค่ากลับมาเป็นอะไรครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-03 21:50:35 By : mr.win
 


 

No. 4



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook Hi5 Blogger

ตอบความคิดเห็นที่ : 3 เขียนโดย : mr.win เมื่อวันที่ 2012-08-03 21:50:35
รายละเอียดของการตอบ ::


Code (PHP)
echo $response;


มันได้ค่ากลับมาเป็นอะไรครับ




ไม่รู้ผมใส่ผิดรึเปล่านะครับ

ผมไปแทรกแบบบนี้

Code (PHP)
<table width="100%">
<?php 
if (($d_com != '') || ($d_all != '') ) showDomainResult($domainbase.".com",'whois.crsnic.net','No match for');
if (($d_net != '') || ($d_all != '') ) showDomainResult($domainbase.".net",'whois.crsnic.net','No match for');
if (($d_org != '') || ($d_all != '') ) showDomainResult($domainbase.".org",'whois.publicinterestregistry.net','NOT FOUND');
if (($d_info != '') || ($d_all != '') ) showDomainResult($domainbase.".info",'whois.afilias.net','NOT FOUND');
if (($d_coth != '') || ($d_all != '') ) showDomainResult($domainbase.".co.th",'whois.thnic.net','No entries');
if (($d_inth != '') || ($d_all != '') ) showDomainResult($domainbase.".in.th",'whois.thnic.net','No entries found');	
echo $response;
?>
</table>


ไม่ได้อะไรกลับมาเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-06 09:02:57 By : Black_Hawk
 


 

No. 5



โพสกระทู้ ( 107 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook Hi5 Blogger

ในที่สุดก็แก้ได้แล้วครับผม เป็นเรื่องของ ค่า response อย่างที่พี่วินบอกจริงๆ ด้วยครับ ไปอ่านจากเว็บต่างประเทศหลายๆ เว็บมาแล้ว แก้ได้เป็นแบบนี้ครับ

Code (PHP)
<?php
function checkDomain($domain,$server,$findText){
// Open a socket connection to the whois server
$con = fsockopen($server, 43);
if (!$con) return false;

// Send the requested doman name
fputs($con, $domain."\r\n");

// Read and store the server response
$response = ' :';
while(!feof($con)) {
$response .= fgets($con,128); 
}

// Close the connection
fclose($con);

// Check the response stream whether the domain is available
if (strpos($response, $findText)){
return true;
}
else {
return false; 
}
}

function showDomainResult($domain,$server,$findText){
if (checkDomain($domain,$server,$findText)){
echo "<tr><td>$domain</td><td><span style='color:#0C3'>AVAILABLE</span></td></tr>";
}
else echo "<tr><td>$domain</td><td><span style='color:#F00'>TAKEN</span></td></tr>";
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>MicroWhois domain checker</title>
<link href="style/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="main">
<div id="caption">DOMAIN LOOKUP</div>
<div id="icon">&nbsp;</div>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="domain" id="domain">
Domain name:
<table>
<tr><td><input class="text" name="domainname" type="text" size="36"/></td></tr>
<tr>
<td>
<input type="checkbox"name="all" checked />all
<input type="checkbox"name="com"/>.com
<input type="checkbox" name="net"/>.net
<input type="checkbox" name="org"/>.org
<input type="checkbox" name="info"/>.info
<input type="checkbox" name="coth"/>.co.th
<input type="checkbox" name="inth"/>.in.th
</td></tr>
<tr><td align="center"><br/><input class="text" type="submit" name="submitBtn" value="Check domain"/></td></tr>
</table> 
</form>
<?php 
if (isset($_POST['submitBtn'])){
$domainbase = (isset($_POST['domainname'])) ? $_POST['domainname'] : '';
$d_all = (isset($_POST['all'])) ? 'all' : ''; 
$d_com = (isset($_POST['com'])) ? 'com' : ''; 
$d_net = (isset($_POST['net'])) ? 'net' : ''; 
$d_org = (isset($_POST['org'])) ? 'org' : ''; 
$d_info = (isset($_POST['info'])) ? 'info' : '';
$d_coth = (isset($_POST['coth'])) ? 'coth' : '';
$d_inth = (isset($_POST['inth'])) ? 'inth' : '';	
$d_inth = (isset($_POST['goth'])) ? 'goth' : '';	

// Check domains only if the base name is big enough
if (strlen($domainbase)>1){
?>
<div id="caption">RESULT</div>
<div id="icon2">&nbsp;</div>
<div id="result">
<table width="100%">
<?php 
if (($d_com != '') || ($d_all != '') ) showDomainResult($domainbase.".com",'whois.crsnic.net','No match for');
if (($d_net != '') || ($d_all != '') ) showDomainResult($domainbase.".net",'whois.crsnic.net','No match for');
if (($d_org != '') || ($d_all != '') ) showDomainResult($domainbase.".org",'whois.publicinterestregistry.net','NOT FOUND');
if (($d_info != '') || ($d_all != '') ) showDomainResult($domainbase.".info",'whois.afilias.net','NOT FOUND');
if (($d_coth != '') || ($d_all != '') ) showDomainResult($domainbase.".co.th",'whois.thnic.net','No match for');
if (($d_inth != '') || ($d_all != '') ) showDomainResult($domainbase.".in.th",'whois.thnic.net','No match for');	
?>
</table>
</div>
<?php 
}
}
?> 
<div id="source">Micro Whois 1.1</div>
</div>
</body>


ใช้งานได้แล้วครับ ขอบคุณพี่วินอีกครั้งนะครับ


ประวัติการแก้ไข
2012-08-07 16:06:25
2012-08-07 16:16:41
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-07 16:05:55 By : Black_Hawk
 


 

No. 6



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

แจ่มครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-07 16:09:53 By : mr.win
 


 

No. 7



โพสกระทู้ ( 21 )
บทความ ( 2 )



สถานะออฟไลน์
Facebook

ขอนำไปใช้น่ะครับ ขอบคุณครับผม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-20 14:25:18 By : nom_loso
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เรื่อง code check domain ครับ มีปัญหาตรงพวกดอทในประเทศไทยอ่ะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่