|  | 
	                
  
    | 
	 
        สวัสดีครับพี่ๆและอาจารย์ทุกท่านครับ ผมมีปัญหาอยากจะสอบถามนิดหน่อยครับ เรื่อง การตรวจสอบ การเสียบ port usb ครับ โดยใช้ php ในการ เช็ค     |  
    |  |  
 
              
  
    | 
 
        
          |  |  |  |  |  
          |  |  | 
            
              | try catch และ/หรือ file_exists() ว่ามีไฟล์อยู่ไหม 
 Code (PHP)
 
 $fileName = 'COM3';
if ( file_exists($fileName) && ($fp = fopen($fileName, "rb"))!==false ){
    $str = stream_get_contents($fp);
    fclose($fp);   
}else{
    echo 'กรุณาเสียบ USB';  
}
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-29 19:49:56 | By :
                            PhrayaDev |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
 
        
          |  |  |  |  |  
          |  |  | 
            
              | จริงๆ ต้องรู้ก่อนว่าติดต่อกับ USB อย่างไร ถ้าใช้ PHP Serial ลอง
 
 Code (PHP)
 
 if (!$serial->deviceOpen()) {
   echo 'กรุณาเสียบ USB';
}
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 01:00:36 | By :
                            PhrayaDev |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | file_exists กับ is_file หรือ is_dir มันก็ดักได้ไม่ใช่เหรอ? ได้ลองหรือยัง? มันน่าจะง่ายกว่าหาวิธีตรวจ usb อีกนะ 
 Code (PHP)
 
 if (file_exists('path') && is_file('path')) {// ตรวจหาที่เป็นไฟล์ต้องมีอยู่
    // fopen
}
if (file_exists('path') && is_dir('path')) {// ตรวจหาที่เป็นโฟลเดอร์
    // fopen
}
 |  
              | 
 ประวัติการแก้ไข
 2020-05-30 07:39:29
 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 07:37:39 | By :
                            mr.v |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | มันหาไฟล์ ไม่เจอ ตอน stream_get_content( $var); ก็เช็ค $var ดูว่า ถูกต้องไหม
 และ ก็ window ใช้ path Drive:\path ตรวจสอบตาม คห 4 ง่ายกว่านะครับ
 
 แต่ที่สำคัญเขียนไว้ยังไง ตกอะไรไปหรือเปล่า ตัวแปรถูกต้องไหม ถ้าไม่ได้เอาโค๊ดมาลง ก็ต้องหาเองแหล่ะครับ
 เพราะหลักๆ ที่ทั้งสองท่านตอบ ก็ใช้ได้แล้ว ก็อยู่จขกท เอาไปประยุกต์ยังไงถีงยัง มี error
 
 บางทีมันเส้นผมบังภูเขา ความอ่อนเพลียทำให้หูอื้อตาลาย สมองเฉื่อย
 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 10:31:59 | By :
                            Chaidhanan |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              |  ตอบความคิดเห็นที่ : 3 เขียนโดย : PhrayaDev เมื่อวันที่ 2020-05-30 01:00:36 
 รายละเอียดของการตอบ ::
 
นี้โค้ดส่งค่าไป ที่ แผง  Arduino ครับ  ผ่าน port USB  com 3 
<? 
$port = fopen("COM3", "w+");  
sleep(2); 
if ($_REQUEST['turn']=="on")  <------- บรรทัดนี้ คือ  get ค่า  turn == on มา  
{ 
	fwrite($port, "n"); 
}
 
if ($_REQUEST['turn']=="off") 
{ 
	fwrite($port, "f"); 
} 
fclose($port);
 
?>
 
ทั้วหมดนี้ ถ้าต่อ Arduino   USB port com3  จะทำงาานได้ปกติ ครับ   
 
คืผมอยากให้  เวลาเราไม่ได้ต่อ Arduino กับ port com3 ให้มันขึ้นแจ้งว่า กรุณาเสียบ USB  แทนการแจ้ง  error ครับ 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 18:31:07 | By :
                            mungkorn |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ผิดๆ 
 Code (PHP)
 
 <?php
try{
  $port = fopen("COM3", "w+");
} catch (Exception $e) {
    echo 'Caught exception: ',  $e->getMessage(), "\n";
}
 |  
              | 
 ประวัติการแก้ไข
 2020-05-30 18:49:08
 2020-05-30 18:50:49
 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 18:46:48 | By :
                            Chaidhanan |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
 
        
          |  |  |  |  |  
          |  |  | 
            
              | Code (PHP) 
 if ($port = fopen("COM3", "w+")) {
	sleep(2);
	if ($_REQUEST['turn'] == "on") {
		fwrite($port, "n");
	}
	if ($_REQUEST['turn'] == "off") {
		fwrite($port, "f");
	}
	fclose($port);
} else {
	phpAlert("กรุณาเสียบ USB!");
        die();
}
function phpAlert($msg)
{
	echo '<script type="text/javascript">alert("' . $msg . '")</script>';
}
 |  
              | 
 ประวัติการแก้ไข
 2020-05-30 19:33:56
 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 19:33:13 | By :
                            PhrayaDev |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  
 
        
          |  |  |  |  |  
          |  |  | 
            
              | ขอบคุณทุกๆท่านนะครับ ที่กรุณาช่วยตอบคำถามครับ 
 |  
              | 
                
                  |  |  |  |  
                  |  | 
                      
                        | Date :
                            2020-05-30 21:27:04 | By :
                            mungkorn |  |  |  
                  |  |  |  |  |  |  |  
          |  |  |  |  |  |  |