สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

jokobozero
PHP Jr. Member
PHP Jr. Member
Posts: 10
Joined: 15/11/2009 11:42 am

สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by jokobozero » 02/03/2010 2:50 am

ผมต้องการดึงข้อมูลจาก XML มาแสดง โดยใช้ Xpath แต่ XML ที่จะดึง มันดันมี Namespace ( : )
ข้อมูลที่จะดึงมาตามลิ้งนี้ครับ http://etutor.en.rmutt.ac.th/projecttest/document.xml
ซึ่งเมื่อดึงมาจะต้องแยกแยะได้ว่าเป็นข้อความปกติ หรือข้อความสีแดงขีดเส้นใต้

ปัญหาของผมคือ
1. จะใช้ Xpath ดึงข้อมูลออกมาได้อย่างไร
2. หรือมีวิธีใดดึงข้อมูลออกมาได้ บ้างครับ

พอดีไปเจอกระทู้เกี่ยวกับเรื่องนี้มา
http://www.jquerytips.com/2008/07/06/ho ... simplexml/
แต่ทดลองเขียนตามแล้วมัน error ครับ
ใครรู้วิธี หรือมีตัวอย่างรบกวนช่วยหน่อยครับ
ขอบคุณมากครับ
Attachments
etutor-_21-2-2553_22.22.47.png
etutor-_21-2-2553_22.22.47.png (4.78 KiB) Viewed 2350 times
Last edited by jokobozero on 02/03/2010 7:26 pm, edited 1 time in total.

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23240
Joined: 22/09/2008 6:18 pm
Contact:

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by mindphp » 02/03/2010 4:21 pm

ใช่กระทู้เดิมหรือเปล่าครับ
ตอนนี้ติด Error อะไร น่ะครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042

jokobozero
PHP Jr. Member
PHP Jr. Member
Posts: 10
Joined: 15/11/2009 11:42 am

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by jokobozero » 02/03/2010 7:36 pm

[quote="mindphp"]ใช่กระทู้เดิมหรือเปล่าครับ
ตอนนี้ติด Error อะไร น่ะครับ[/quote]

ใช่ครับ ติดปัญหาตรงที่ ต้องการดึงข้อมูลออกมาจาก xml และ ต้องแยกข้อความที่เป็นตัวหนังสืือสีแดง ขีดเส้นใต้ให้ได้น่ะครับ
คือผมต้องทำระบบนำเข้าข้อสอบโดยใช้ php ดึงข้อมูล จาก XML ของ Word ซึ่งข้อที่ถูกจะเป็นตัวหนังสืือสีแดง ขีดเส้นใต้ ซึ่งจะต้องเก็บในตัวแปรข้อถูก ส่่วนข้อ choice อื่นๆ ก็ให้เก็บในตัวแปรปกติครับ และพอดีว่าไปเจอกระทู้ที่คิดว่าน่าจะเกี่ยวข้องกับสิ่งที่ผมทำอยู่ ก็เลยทำตามดู แต่มันดันรันไม่ผ่านครับ [url]http://www.jquerytips.com/2008/07/06/how-to-use-php-simplexml/[/url]
รบกวนดูให้หน่อยครับ ตามลิ้งนีี้เค้า้ใช้วิธี เข้าถึงข้อมูล Tag ที่มี Namespace โดยการตัด : ทิ้งแล้วเชื่อมคำ ตรงนี้ผมเองทำตามเค้าแล้วรันไม่ผ่าน
ส่วนต่อไป เค้าใช้วิธีเข้าถึงข้อมูลที่อยุ่ภายใน Tag xml ลึกๆ โดยใช้วิธี xpath เข้าถึง tag ที่ต้องการได้เลยซึ่งตรงนี้ตรงกับงานของผมเลย
ใครทราบช่วยแก้ไขโค๊ดในลิ้งให้ถูกหน่อยครับ
ขอบคุณมากๆ ครับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23240
Joined: 22/09/2008 6:18 pm
Contact:

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by mindphp » 02/03/2010 8:17 pm

ลองดูนะครับไม่รู้ตรงตามต้องการหรือเปล่า

Code: Select all

$xml_load    =    simplexml_load_file('http://etutor.en.rmutt.ac.th/projecttest/document.xml');
$node    =    $xml_load->xpath("//w:t");
print_r($node); 
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23240
Joined: 22/09/2008 6:18 pm
Contact:

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by mindphp » 02/03/2010 8:36 pm

ลองดูตาม ไฟล์นะครับ หน้า 42 น่าจะพอช่วยได้
advanced_xml.pdf
(712.37 KiB) Downloaded 1652 times
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042

jokobozero
PHP Jr. Member
PHP Jr. Member
Posts: 10
Joined: 15/11/2009 11:42 am

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by jokobozero » 05/03/2010 4:26 am

mindphp wrote:ลองดูนะครับไม่รู้ตรงตามต้องการหรือเปล่า

Code: Select all

$xml_load    =    simplexml_load_file('http://etutor.en.rmutt.ac.th/projecttest/document.xml');
$node    =    $xml_load->xpath("//w:t");
print_r($node); 
ใช่แล้วครับ
แต่ติดอีกทีนึงตรงที่จะระบุข้อมูลตัวอักษรสีแดง และขีดเส้นใต้ ได้อย่างไรดีครับ
เพราะข้อมูลที่ได้ออกมามันเป็นข้อความ ทั้งหมดเลย ไม่สามารถแยกแยะ ข้อมูลที่ต้องการได้ครับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23240
Joined: 22/09/2008 6:18 pm
Contact:

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by mindphp » 06/03/2010 1:34 am

ถ้าจะให้ สี หรือ ขีดเส้น หรือตัวอักษรของเรามีคุณสมบัติคล้ายๆ ก็ต้องดึงค่าพวกนั้นมากำหนดลงใน tag html เอาเองครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042

jokobozero
PHP Jr. Member
PHP Jr. Member
Posts: 10
Joined: 15/11/2009 11:42 am

Re: สอบถามการใช้ Xpath ใน XML แบบมี Namespace ( : )

Post by jokobozero » 06/03/2010 3:52 am

mindphp wrote:ถ้าจะให้ สี หรือ ขีดเส้น หรือตัวอักษรของเรามีคุณสมบัติคล้ายๆ ก็ต้องดึงค่าพวกนั้นมากำหนดลงใน tag html เอาเองครับ
ผมหมายถึงว่า ตอนที่ดึงข้อมูล ยังระบุไม่ได้ว่าข้อมูลที่ดึงมาเป็นข้อความที่ต้องการ
เช่น ผมต้องการดึงเอาเฉพาะข้อความที่เป็นตัวหนังสือสีแดง และขีดเส้นใต้ ออกมาแสดงเพียงอย่างเดียว
ดังนั้นถ้าไฟล์ข้อมูลจากรูปด้านล่าง เมื่อดึงข้อมูลออกมาแล้ว จะแสดงคำว่า ถูก ออกมาเพียงคำเดียว คำว่าผิดจะต้องไม่แสดงครับ
ข้อความดังรูปที่ผมแนบมาครับ


ส่วนนี้เป็น tag xml ที่ได้จาก word ครับ

อันนี้เป็นไฟล์ word ต้นฉบับครับ
http://etutor.en.rmutt.ac.th/projecttest/correct.docx

อันนี้เป็นลิ้ง xml ที่ได้จากการแปลงไฟล์ Word ครับ
http://etutor.en.rmutt.ac.th/projecttest/correct.xml

ผมลองใช้วิธี Xpath เพื่อเข้าถึง แท็ก w:color แต่ก็ไม่มีข้อมูลออกมา เหมือนกับว่า โปรแกรมมันจะทำการดึงค่าเฉพาะส่วนที่เป็นข้อความออกมาแสดงเท่านั้น
โดยไม่สนใจ tag อื่นๆ ที่เป็นส่วน property
ช่วยแนะนำหน่อยครับว่าควรเขียนอย่างไรดีครับ
ขอบคุณครับ
Attachments
-_6-3-2553_3.34.22.png
-_6-3-2553_3.34.22.png (49.5 KiB) Viewed 2320 times
ระบุคำจากสีและเส้นใต้-_6-3-2553_2.28.39.png
ระบุคำจากสีและเส้นใต้-_6-3-2553_2.28.39.png (95.13 KiB) Viewed 1640 times
Last edited by mindphp on 06/03/2010 4:13 am, edited 1 time in total.
Reason: ?????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????????????

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: No registered users and 29 guests