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 ตรวจสอบ EMS บางที่ดึงข้อมูลจากเว็บไปรษณีย์



 

ขอความช่วยเหลือ : ใครเคยเขียน code ตรวจสอบ EMS บางที่ดึงข้อมูลจากเว็บไปรษณีย์

 



Topic : 106588



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



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




ขอความช่วยเหลือ : ใครเคยเขียน code ตรวจสอบ EMS บางที่ดึงข้อมูลจากเว็บไปรษณีย์

ขอโค้ดตัวอย่าง หรือแนวทางการเขียนดึงข้อมูลด้วยครับ



Tag : PHP, HTML/CSS, JavaScript, VBScript, JAVA







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-03-05 23:24:02 By : Art-B View : 9844 Reply : 20
 

 

No. 1



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

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

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



Go to : อยากทราบว่าใครพอมี Code ตรวจสอบสถานะ Track EMS บ้างครับ อยากทราบว่าใครพอมี Code ตรวจสอบสถานะ EMS บ้างครับ
Go to : รบกวนถามเรื่อง แทรก เช็ค Track EMS ไปรษณีย์ หน้า website ของเราเอง ไม่ทราบว่าต้องใช้ Code อะไรครับผม






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


 

No. 2



โพสกระทู้ ( 5,105 )
บทความ ( 4 )

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

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


ลองไปนั่งอ่านดูครับ >>> คลิก <<<

Edit 1 - ไม่ทัน admin 555+


ประวัติการแก้ไข
2014-03-06 08:49:05
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-06 08:45:35 By : apisitp
 

 

No. 3



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



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


จะบอกว่า ทั้งลองแล้ว ใช้งานไม่ได้เลยครับ ขอโค้ดที่สามารถใช้งานได้จริงหน่อยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-06 10:16:58 By : Art-B
 


 

No. 4



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



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


มันขึ้นแต่แบบนี้

The requested URL was rejected. Please consult with your administrator.

Your support ID is: 6111612062080013292
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-06 10:18:46 By : Art-B
 


 

No. 5



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



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


ไม่มีคนมาตอบเลยครับ ว่าทำไมถึงใช้ไม่ได้
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-07 09:01:51 By : Art-B
 


 

No. 6



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

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

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

ผมใช้บริการ emsbot.com แทน ลองดูครับเผื่อตรงกับความต้องการ

http://emsbot.com/developers/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-07 11:06:44 By : poomloom
 


 

No. 7



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



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

ตอบความคิดเห็นที่ : 6 เขียนโดย : poomloom เมื่อวันที่ 2014-03-07 11:06:44
รายละเอียดของการตอบ ::
เป๊ะมากเลยครับ :D

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-07 11:17:21 By : itpcc
 


 

No. 8



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



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


อยากพัฒนาใช้เอง ไม่อยากไปลิงค์กับ Host ของที่อื่น จะใช้ host ตัวเองวิ่งตรงไปที่ server ปณ. เลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 11:17:15 By : Art-B
 


 

No. 9



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



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

ลองทำอะไรไปบ้างแล้วครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 11:38:45 By : kerb
 


 

No. 10



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



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

ตอบความคิดเห็นที่ : 8 เขียนโดย : Art-B เมื่อวันที่ 2014-03-10 11:17:15



ประวัติการแก้ไข
2014-03-10 13:05:04
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 13:01:42 By : itpcc
 


 

No. 11



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



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

จริงๆเราสามารถเขียนโปรแกรมเพื่อ Post ไปยังหน้า track ems แล้ว get data มาโชว์ได้นะครับ แต่ขอเสียของการทำแบบนี้คือถ้าทางเว็บไปรษณีย์มีการปรับเปลี่ยน process หรือ code บางอย่าง อันจะทำให้การทำงานผิดพลาดได้ ซึ่งผมมองว่าเค้าคงไม่ได้เปลี่ยนบ่อยหรอกครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 13:11:29 By : kerb
 


 

No. 12



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



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


ตอบความคิดเห็นที่ : 11 เขียนโดย : kerb เมื่อวันที่ 2014-03-10 13:11:29
รายละเอียดของการตอบ ::
ขอโค้ดตัวอย่างได้ไหนครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 16:22:09 By : Art-B
 


 

No. 13



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



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

ไม่มีโค้ดตัวอย่างครับ ลองเขียนเองเลยครับไม่ยาก ใช้ curl เข้ามาช่วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-10 16:28:20 By : kerb
 


 

No. 14



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



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


ใครเก่งช่วยแก้ไข พัฒนาต่อยอดให้ด้วยครับ

Code (PHP)
 <?php
        header('content-type: text/html; charset=tis-620;');
        define('urltrack', 'http://track.thailandpost.co.th/trackinternet');
        $track = "EK449227981TH";
        $c = cURL(urltrack . '/Default.aspx', null, null, null);
        preg_match('~"__VIEWSTATE" value="([^"]+)"~', $c, $m);
        $VIEWSTATE = urlencode($m[1]);
        preg_match('~"__EVENTVALIDATION" value="([^"]+)"~', $c, $m);
        $EVENTVALIDATION = urlencode($m[1]);
        if (trim($VIEWSTATE) || trim($VIEWSTATE)) {
            $c = cURL(urltrack . '/Default.aspx', true, null, '__EVENTTARGET=Login&__VIEWSTATE=' . $VIEWSTATE . '&__EVENTVALIDATION=' . $EVENTVALIDATION . '&TextBarcode=' . $track);
            if (preg_match('~ASP.NET_SessionId=(.+?);~', $c, $b)) {
                $c = cURL(urltrack . '/Result.aspx', null, $b[0], null);

                if (preg_match_all('~(<td style="width:[^"]+">.+)<\/td>~', $c, $m)) {
                    echo '<table>';
                    foreach ($m[1] as $k => $v) {
                        echo '<tr>' . str_replace('signature.aspx', urltrack . '/signature.aspx', $v) . '</tr>';
                    }
                    echo '</table>';
                } else {
                    echo 'Not found!!!';
                }
            }
        } else {
            echo 'System Error!!!';
        }

        function cURL($url, $header = NULL, $cookie = NULL, $p = NULL) {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_HEADER, $header);
            curl_setopt($ch, CURLOPT_NOBODY, $header);
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_COOKIE, $cookie);
            curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.1)');
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
            curl_setopt($ch, CURLOPT_ENCODING, 'gzip');
            if ($p) {
                curl_setopt($ch, CURLOPT_POST, true);
                curl_setopt($ch, CURLOPT_POSTFIELDS, $p);
            }
            $result = curl_exec($ch);
            if ($result) {
                return $result;
            } else {
                return curl_error($ch);
            }
            curl_close($ch);
        }
        ?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-11 13:30:25 By : Art-B
 


 

No. 15



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



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


มาอัพเดท พัฒนาได้เท่านี้ ติดปัญหาเรื่องส่งค่าไปหน้าผลลัพธ์ สุดท้ายใครก็ได้ช่วยหน่อย

ว่าหน้าเพจ Result.aspx มันต้องการค่าอะไรบ้างที่ส่งไปหา เพราะแสดงผลลัพธ์ที่ถูกต้องได้

Code (PHP)
<?php

ob_start();
session_start();
?>     
<?php

header('content-type: text/html; charset=tis-620;');
define('urltrack', 'http://track.thailandpost.co.th/trackinternet');
$track = "EK449227981TH";

function getHTML($url, $timeout) {
    $ch = curl_init($url); // initialize curl with given url
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); // set  useragent
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // write the response to a variable
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // follow redirects if any
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // max. seconds to execute
    curl_setopt($ch, CURLOPT_FAILONERROR, 1); // stop when it encounters an error
    return @curl_exec($ch);
}

function getHTML2($url, $timeout, $para, $header) {

    $ch = curl_init($url); // initialize curl with given url

    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); // set  useragent
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // write the response to a variable
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // follow redirects if any
    curl_setopt($ch, CURLOPT_HEADER, $header);
    curl_setopt($ch, CURLOPT_NOBODY, $header);
    curl_setopt($ch, CURLOPT_POST, true);

    curl_setopt($ch, CURLOPT_ENCODING, 'gzip,deflate');
    curl_setopt($ch, CURLOPT_POSTFIELDS, $para);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // max. seconds to execute
    curl_setopt($ch, CURLOPT_FAILONERROR, 1); // stop when it encounters an error
    return @curl_exec($ch);
}

function getHTML3($url, $cookie) {
    $ch = curl_init($url); // initialize curl with given url
    $timeout = 10;
    curl_setopt($ch, CURLOPT_HEADER,null);
    curl_setopt($ch, CURLOPT_NOBODY, null);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); // set  useragent
    curl_setopt($ch, CURLOPT_URL, $url);
  
    curl_setopt($ch, CURLOPT_COOKIE, $cookie);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // max. seconds to execute
    curl_setopt($ch, CURLOPT_ENCODING, 'gzip');


    return @curl_exec($ch);
}

$html = getHTML(urltrack . '/Default.aspx', 10);
preg_match("/<title>(.*)<\/title>/i", $html, $match);
$title = $match[1];
var_dump($match);
echo "<br>" . $title . "<br>";

preg_match('/<input(.*?)id=\"__VIEWSTATE\"(.*)value=\"(.*?)\"/i', $html, $match2);
$title2 = $match2[3];
//var_dump($match2);
echo "<br>" . $title2 . "<br>";
$VIEWSTATE = urlencode($title2);
//$VIEWSTATE = $title2;

preg_match('/<input(.*?)id=\"__EVENTVALIDATION\"(.*)value=\"(.*?)\"/i', $html, $match3);
$title3 = $match3[3];
//var_dump($match2);
echo "<br>" . $title3 . "<br>";
$EVENTVALIDATION = urlencode($title3);
$login = urlencode("Login");
$track = urlencode($track);
//$EVENTVALIDATION = $title3;

if (trim($VIEWSTATE) || trim($VIEWSTATE)) {
    $html = getHTML2(urltrack . '/Default.aspx', 10, '__EVENTTARGET=' . $login . '&__VIEWSTATE=' . $VIEWSTATE . '&__EVENTVALIDATION=' . $EVENTVALIDATION . '&TextBarcode=' . $track, true);
    // $html = cURL(urltrack . '/Default.aspx', true, null, '__EVENTTARGET=Login&__VIEWSTATE=' . $VIEWSTATE . '&__EVENTVALIDATION=' . $EVENTVALIDATION . '&TextBarcode=' . $track);
    if (preg_match('~ASP.NET_SessionId=(.+?);~', $html, $b)) {

        var_dump($b);
        preg_match('~TS0179c3ff=(.+?);~', $html, $b2);
        var_dump($b2);
        preg_match('~persist=(.+?);~', $html, $b3);
        var_dump($b3);
       // echo $c = cURL(urltrack . '/Result.aspx', null, $b[0], null);
       echo $c = getHTML3(urltrack . '/Result.aspx', $b[0] . ";" . $b2[0] . ";" . $b3[0]);
        //var_dump($b);
    }
} else {
    echo 'System Error!!!';
}

   
       
?>


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-03-12 11:35:38 By : Art-B
 


 

No. 16

Guest


ถ้าทำได้แล้วขอคำปรึกษาด้วยครับ กำลังหาวิธีอยู่เลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-11-24 10:01:48 By : ิN@s
 


 

No. 17



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



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

เรื่องแบบนี้มันไม่ใช่ใครเก่งแล้วจะทำได้นะครับ

เป็นเรื่องของไม่รู้ format ui ที่จะใช้ติดต่อกับไปรณีย์เท่านั้น
อยากให้ใช้งานได้จริง ก็แค่เข้าไปติดต่อกับไปรณ๊ย์ ขอ ui เขามา
ถ้าเขาอนุญาต ก็ไปต่อได้ง่ายๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-11-24 12:24:20 By : NewbiePHP
 


 

No. 18



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

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

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

มันเคยใช้ได้ แต่ตอนนี้ไปรษณีย์เปลี่ยนรุปแบบใหม่แล้วครับ

Thailand Track

ส่วนหนึ่งที่เอาออก เข้าใจว่ามีการ Request มากจนเกินไป ทั้งใช้งานจริงและ Spam สุดท้ายน่าจะเป็นการต้องการความถูกต้องคือ ป้องกันพวก Scamp เลยให้ตรวจสอบเว็บของไปรษณีย์โดยตรง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-11-24 12:51:44 By : mr.win
 


 

No. 19

Guest


<?

$tracking=$_GET['tracking'];
$ch = curl_init();
$url2="http://www.thailandpost.com/php/webservice.php";
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "action=getTrack&barcode=$tracking&language_id=");
$result=curl_exec ($ch);
curl_close ($ch);
$obj = json_decode($result,true);



foreach($obj as $a)
{
echo "$a[DateTime] $a[Location] $a[StatusName] $a[Description]<br />"
}
?>
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-22 20:37:51 By : pong
 


 

No. 20

Guest


อยากรู้ว่า เว็บนี้เป็นการ เช็ค ems เว็บไปรษณีย์ของไทยหรือเปล่าครับ https://www.emsthailand.com
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-07-10 16:32:13 By : EMS
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความช่วยเหลือ : ใครเคยเขียน code ตรวจสอบ EMS บางที่ดึงข้อมูลจากเว็บไปรษณีย์
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
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 อัตราราคา คลิกที่นี่