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 > เขียน php เพื่อping,Traceroute,nslookup ขอช้วยผู้รู้แก Error ให้หน่อยนะคะ และเพิ่มฟังชั่นของการปิง



 

เขียน php เพื่อping,Traceroute,nslookup ขอช้วยผู้รู้แก Error ให้หน่อยนะคะ และเพิ่มฟังชั่นของการปิง

 



Topic : 107092

Guest




ตอนนี้ การปิงธรรมดา สามารถทำได้แล้วแต่ไม่สามารถใส่ ออปชั่นได้ เช่น

Options:
-t Ping ไปยัง Host ตามที่ระบุเรื่อยๆ จนกว่าจะสั่งยกเลิกโดยกดแป้น Ctrl-C.และหากต้องการดูสถิติให้กดแป้น Ctrl-Break
-a เปลี่ยนหมายเลข IP Address ของ Host เป็นชื่อแบบตัวอักษร
-n count Ping แบบระบุจำนวน echo ที่จะส่ง
-l size กำหนดขนาด buffer
-f ตั้งค่าไม่ให้แยก flag ใน packet.
-i TTL Ping แบบกำหนด Time To Live โดยกำหนดค่าตั้งแต่ 1-255
-v TOS กำหนดประเภทของบริการ (Type of service)
-r count Ping แบบให้มีการบันทึกเส้นทางและนับจำนวนครั้งในการ hops จนกว่าจะถึงปลายทาง
-s count Ping แบบนับเวลาในการ hop แต่ละครั้ง
-j host-list Loose source route along host-list.
-k host-list Strict source route along host-list.
-w timeout Ping แบบกำหนดเวลารอคอยการตอบรับ

หากหนูใส่-t ซึ่งจะต้องใช้คำสั่งหยุดด้วย ตรงนี้คิดไม่ออกคะ

[Code (PHP)
<?php
// define variables and set to empty values
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$WEB = $email = $kk = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST")
{

   if (empty($_POST["WEB"]))
     {$nameErr = "WEB is required";}
   else
     {$WEB = test_input($_POST["WEB"]);}  
   if (empty($_POST["kk"]))
     {$nameErr = "options is required";}
   else
     {$kk = test_input($_POST["kk"]);} 
}

function test_input($data)
{
     $data = trim($data);
     $data = stripslashes($data);
     $data = htmlspecialchars($data);
     return $data;
}
?>

<p><span class="error">
</span></p><form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> 
   WEB: <input type="text" name="WEB">Options:<input type="text" name="kk">
		<input type="submit" name="submit" value="Ping"><br><br>
	Options:<br>
   &nbsp;&nbsp;-t Ping the specified host until stopped.<br>
	&nbsp;&nbsp;&nbsp;&nbsp;To see statistics and continue<br> 
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;>type Control-Break;<br>
	&nbsp;&nbsp;&nbsp;&nbsp;To stop<br>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;>type Control-C.<br>
   &nbsp;&nbsp;-a Resolve addresses to hostnames.<br>
   &nbsp;&nbsp;-n count Number of echo requests to send.<br>
   &nbsp;&nbsp;-l size Send buffer size.<br>
   &nbsp;&nbsp;-f Set Don't Fragment flag in packet (IPv4-only).<br>
   &nbsp;&nbsp;-i TTL Time To Live.<br>
   &nbsp;&nbsp;-v TOS Type Of Service (IPv4-only. This setting has been deprecated and has no effect on the type of service field in the IP Header).<br>
   &nbsp;&nbsp;-r count Record route for count hops (IPv4-only).<br>
   &nbsp;&nbsp;-s count Timestamp for count hops (IPv4-only).<br>
   &nbsp;&nbsp;-j host-list Loose source route along host-list (IPv4-only).<br>
   &nbsp;&nbsp;-k host-list Strict source route along host-list (IPv4-only).<br>
   &nbsp;&nbsp;-w timeout Timeout in milliseconds to wait for each reply.<br>
   <br><br>
   

</form>

<?php
echo "<h2> Result:</h2>";
echo $WEB;
echo $kk;
$ip = $WEB;
//echo shell_exec("ping $ip ");
$exe= shell_exec("ping $ip $kk 5");
print_r(nl2br($exe));
?>


การTraceroute มีerrorอยู่สามจุดที่ไม่สามารถแก้ได้คะ
Code (PHP)
<?php 
//  This script was writen by [email protected], Aug.2001 
//  http://www.theworldsend.net  
//  This is my first script. Enjoy. 
//   
// Put it into whatever directory and call it. That's all. 
// Updated to 4.2 code in 2002 
// Get Variable from form via register globals on/off 
//------------------------- 
$unix      =  0; //set this to 1 if you are on a *unix system       
$windows   =  1; //set this to 1 if you are on a windows system 
// ------------------------- 
// nothing more to be done. 
// ------------------------- 
//globals on or off ? 
$register_globals = (bool) ini_get('register_gobals'); 
$system = ini_get('system'); 
$unix = (bool) $unix; 
$win  = (bool)  $windows; 
// 
$ip = file_get_contents('http://phihag.de/ip/');
echo '   <input type="hidden" name="submit" value="Traceroute!"></input>'; 
If ($register_globals) 
{ 
   $self = $PHP_SELF; 
}  
else  
{ 
   $submit = $_GET['testroute'];; 
   $host   = $_GET['host']; 
   $self   = $_SERVER['PHP_SELF']; 
}; 
// form submitted ? 
If ($submit == "Traceroute!")  
{ 
      // replace bad chars 
      $host= preg_replace ("/[^A-Za-z0-9.]/","",$host); 
      echo '<body bgcolor="#FFFFFF" text="#000000"></body>'; 
      echo("Trace Output:<br>");  
      echo '<pre>';            
      //check target IP or domain 
      if ($unix)  
      { 
         system ("traceroute $host"); 
         system("killall -q traceroute");// kill all traceroute processes in case there are some stalled ones or use echo 'traceroute' to execute without shell 
      } 
      else 
      { 
         system("tracert $host"); 
      } 
    
}  
else  
{ 
    echo '<body bgcolor="#FFFFFF" text="#000000"></body>'; 
	echo 'Traceroute server ';
    echo '<p>Your IP is: '.$ip.'</p>'; 
    echo '<form methode="post" action="'.$self.'">'; 
    echo '   Enter IP or Host <input type="text" name="host" value="'.$host.'"></input>
			<input type="hidden" name="testroute" value="Traceroute!"></input>
			<input type="submit" name="submit" value="Traceroute!!!"></input>'; 
    
    echo '</form>'; 
    echo '<br><b>'.$system.'</b>'; 
    echo '</body></html>'; 
}
?>




ส่วนการnslookup

Code (PHP)
<?php
// For Linux...

function gethost ($ip) {
 $host = `host $ip`;
 return (($host ? end ( explode (' ', $host)) : $ip));
}

// For Win32...

function nslookup ($ip) {
 $host = split('Name:',`nslookup $ip`);
 return ( trim (isset($host[1]) ? str_replace ("\n".'Address:  '.$ip, '', $host[1]) : $ip));
}
?>


คิดไม่ออกเลยคะ ขอบคุณทุกคนที่เข้ามาช่วยนะคะ



Tag : HTML/CSS, CakePHP, Web (ASP.NET)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-03-20 14:35:33 By : mook View : 2145 Reply : 3
 

 

No. 1



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

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

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

ใช้ shell_exec ก็ไม่ได้ใช่หรือเปล่าครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-21 09:54:06 By : mr.win
 


 

No. 2



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



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


จุดประสงค์จะใช้ทำอะไรครับ การใช้คำสั่ง ping traceroute พวกนี้ คงใช้ได้ไม่ทั้งหมด ถ้า server ไม่ใช่ของเรา

แต่ถ้ารู้จุดประสงค์อาจมีวิธีอื่นที่ php ทำได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-21 13:02:56 By : randOmizE
 

 

No. 3

Guest


shell_exec ใช้งานอย่างไรคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-31 14:12:38 By : คนเดิม
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เขียน php เพื่อping,Traceroute,nslookup ขอช้วยผู้รู้แก Error ให้หน่อยนะคะ และเพิ่มฟังชั่นของการปิง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 05
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 อัตราราคา คลิกที่นี่