วันจันทร์ที่ 22 สิงหาคม พ.ศ. 2559

ทดลองส่งข้อมูลผ่านฟอร์มแบบอัตโนมัติ โดยใช้ php curl วิธี GET

หลังจากที่ผู้เขียนได้ทดลองการส่งข้อมูลผ่านฟอร์มแบบอัตโนมัติโดยไม่ต้องคอยนั่งกดคีย์ Submit ไปเมื่อปี 2558 ตามลิงค์ที่ให้นี้ http://www.s-techthai.com/2014/12/php-method-post.html กลับมาเจอการบ้านใหม่อีกครั้งเพราะการส่งข้อมูลใช้วิธีการที่เรียกว่า "POST" มีบางแอพพลิเคชั่นที่ไม่ต้องการให้เราสั่งงานโดยใช้การ "POST" มาในวันที่จะเป็นการแนะนำขั้นต้องการสั่งงานผ่าน PHP Curl โดยใช้วิธีการ "GET" บ้าง

ศึกษาการทำงานกัน
 $url = 'http://www.gps-vehicle.com/?'.$field_string; เป็นการตั้งค่า url ที่ต้องการจะส่งข้อมูลแบบ GET
 $curl = curl_init(); เป็นการกำหนดค่าเริ่มต้นสำหรับการใช้งานฟังก์ชั่น curl
 curl_setopt_array($curl, array( กำหนดอาเรย์สำหรับการส่งค่าพารามิเตอร์ต่างๆ ไปยังเซิร์ฟเวอร์
                        CURLOPT_RETURNTRANSFER => 1,  กำหนดออฟชั่นให้มีการส่งค่ากลับ
                        CURLOPT_URL => $url, กำหนดค่า Url ที่ใช้ในการทดลองส่งข้อมูล
                        CURLOPT_USERAGENT => 'Thai Prosperous IT co.,Ltd.'
                ));
 $resp = curl_exec($curl); สั่งให้ฟังก์ชั่น curl ประมวลผล โดยผลลัพธ์หรือค่าตอบกลับอยู่ในตัวแปร resp
 curl_close($curl); สั่งสิ้นสุดการทำงานของฟังก์ชั่น curl



 $url = 'http://www.gps-vehicle.com/?'.$field_string;
 echo $url;
 $curl = curl_init();
 curl_setopt_array($curl, array(
                        CURLOPT_RETURNTRANSFER => 1,
                        CURLOPT_URL => $url,
                        CURLOPT_USERAGENT => 'Thai Prosperous IT co.,Ltd.'
                   ));
 $resp = curl_exec($curl);
 curl_close($curl);


หลังจากนั้นก็ทดสอบการทำงานผ่านเทอร์มินอล โปรแกรมก็สามารถประมวลผลตามที่เราต้องการได้อย่างอัตโนมัติ ผู้เขียนตั้งค่าการทำงานผ่าน crond ทุกๆ 2 นาที หรือทำแบบ asynchronous ก็ได้ สำหรับฟังก์ชั่นการรับค่าจากอุปกรณ์ GPS TRACKER ให้ส่งต่อข้อมูลที่เปลี่ยนเป็นแบบวิธี GET ซึ่งรับประกันได้ว่าได้ผลการทำงานดีเช่นเดียวกัน ส่วนขนาดของข้อความสูงสุดที่รับได้ ผู้เขียนยังไม่ได้ทดสอบแต่ประเมินว่าขึ้นอยู่กับค่ามาตรฐานของโปรโตคอล HTTP อยู่แล้ว