Open Data Kit และ ซอฟท์แวร์รหัสเปดดาน ... · 2018. 12....

Preview:

Citation preview

การจดการระบบฐานขอมลผสงอายดวย Open Data Kit และ ซอฟทแวรรหสเปดดานภมสารสนเทศ

Elderly Database Design Using Open Data Kit and FOSS4G

ดนพล นาสงคาร

วทยานพนธระดบปรญญาตร เสนอภาควชาทรพยากรธรรมชาตและสงแวดลอม คณะเกษตรศาสตร ทรพยากรธรรมชาตและสงแวดลอม มหาวทยาลยนเรศวร

เพอเปนสวนหนงของการศกษาหลกสตรปรญญาวทยาศาสตรบณฑต สาขาวชาภมศาสตร พฤศจกายน 2561

กตตกรรมประกาศ

ผวจยขอกราบขอบพระคณเปนอยางสงในความกรณาของ ผศ.ดร.สทธชย ชส าโรง ทปรกษาวทยานพนธ ทไดสละเวลาอนมคามาเปนทปรกษาพรอมทงใหค าแนะน า ตรวจสอบ แกไข ขอบกพรอง และตดตามผลการศกษาตลอดระยะเวลาในการท าวทยานพนธฉบบน

ขอกราบ ขอบพระคณคณาจารย สาขาวชาภมศาสตรทไดกรณาใหค าแนะน า จนท าใหวทยานพนธฉบบนส าเรจลลวงไดอยางสมบรณและทรงคณคา

กราบขอบคณพๆเจาหนาทอสม.และหนวยงานทเกยวของในต าบลคอรมทสละเวลาในการอบรมการใชและออกเกบขอมลมาให เหนอสงอนใดขอกราบขอบพระคณ บดา มารดา และผปกครองของผวจยทใหก าลงใจ

และใหการสนบสนนในทก ๆ ดานอยางดทสดเสมอมา

คณคาและคณประโยชนอนพงจะมจากวทยานพนธฉบบน ผวจยขอมอบและอทศแดผมพระคณทกๆทาน ผวจยหวงเปนอยางยงวา งานวจยนจะเปนประโยชนตอการวเคราะหฐานขอมลผสงอายและผทมความสนใจไมมากกนอย

ดนพล นาสงคาร

ชอเรอง การจดการระบบฐานขอมลผสงอายดวย Open Data Kit และ ซอฟทแวรรหสเปดดานภมสารสนเทศ

ผวจย ดนพล นาสงคาร ประธานทปรกษา ผศ.ดร.สทธชย ชส าโรง ประเภทสารนพนธ วทยานพนธ วท.บ. สาขาวชาภมศาสตร, มหาวทยาลยนเรศวร, 2561 ค าส าคญ ฐานขอมลเชงพนท, ผสงอาย, Open Data Kit, Web GIS

บทคดยอ

เนองจากในปจจบนสมารทโฟนถอเปนสวนนงในชวตประจ าวนมนษยเราไมสามารถปฏเสธไดเลยวาสมารทโฟนเปนสวนหนงของปจจยทเพมเขามาในการด ารงชวตโดยงานวจยชนศกษาเกยวกบการประยกตการเกบขอมลโดยใชสมารทโฟนโดยใชขอมลผสงอายโดยสรางแบบฟอรมท รวมออกแบบกบหนวยงานสขภาพในพนทศกษาแลวทดลองใหหนวยงานเกบขอมลสขภาพผสงอายพบวาทผานมาหนวยสขภาพเกบขอมลโดยใชแบบสอบถามกระดาษท าใหการสบคนขอมลท าไดยากพรอมยงเพมงานเมอตองกรอกขอมลลงในโปรแกรม Excel แลวผดแลระบบไอทในหนวยงานตองน าเขาขอมลจากผส ารวจมาน าเขาฐานขอมลอกท าใหเมอตองการวเคราะหขอมลเชงลกเชน การกระจายตวของโรค เสนทางจากบานผสงอายไปยงหนวยงานสขภาพ

ซงการท างานดวยแอปพลเคชน ODK Collect สามารถท าใหลดงานทงผส ารวจละผดแลระบบของหนวยงานโดยการเกบขอมลดวย ODK Collect สามารถสงขอมลโดยตรงไปยงฐานขอมลพรอมทงผส ารวจไมตองกรอกขอมลจากกระดาษเขาโปรแกรม Excel อก เพราะสามารถดาวโหลดขอมลจาก ODK Aggregate ไดเลย พรอมทงผดแลระบบของหนวยงานสามารถดงขอมลจากฐานขอมลออกมาวเคราะหไดตอเลย

จากขางตนจะเหนไดวา ODK สามารถลดงานและประยกตในส ารวจและเกบขอมลตางๆนอกเหนอเรองแผนทสงอาย ไดแก แบบส ารวจผเสยภาษ,เบยคนชรา,ส ารวจจ านวนประชากร ฯลฯ

Title Elderly Database Design Using Open Data Kit and FOSS4G

Author Danupol Nasingkarn

Advisor Assistant Professor Dr.Sittichai Choosumrong Academic Paper Thesis B.S. Name of Degree in Geography, Naresuan University, 2018

Keywords Spatial Database, Elderly, Open Data Kit, Web GIS

Abstract

Nowadays, smartphones are a part of everyday life. We can not deny that smartphones

are part of the added factor of living. With the application of smartphone data collection using the elderly data, creating a form that co-designed with the health agency in the study area, Older people find that past health units collect data using paper questionnaires, making it difficult to find and adding tasks. When filling in the Excel program, the IT administrator at the agency must import the data from the surveyor. Importing another database makes it possible to analyze such insights. Distribution of disease Routes from elderly homes to health agencies. Using the ODK Collect application can reduce the workload of both administrators, administrators, and administrators. By collecting data, ODK Collect can send data directly to the database and the surveyor does not have to fill out the data. Access Excel program again because it can download data from the ODK Aggregate and the administrator of the agency can extract data from the database to analyze it. From above, it can be seen that ODK can reduce the work and application in the survey and collect information other than the older map, such as taxpayers' survey, old age pension, population survey, etc.

สารบญ บทท หนา

1 ............................................................................................................................................................................ 1

บทน า .................................................................................................................................................................... 1

ปญหาและความส าคญ ....................................................................................................................................... 1

วตถประสงคของการวจย ................................................................................................................................... 3

ความส าคญของงานวจย .................................................................................................................................... 3

ขอบเขตการวจย ................................................................................................................................................ 3

กรอบแนวคด ..................................................................................................................................................... 4

นยามศพทเฉพาะ ............................................................................................................................................... 7

ค าถามงานวจย .................................................................................................................................................. 9

2 ......................................................................................................................................................................... 10

เอกสารงานวจยทเกยวของ ............................................................................................................................... 10

2.1 ทฤษฎทเกยวของ .................................................................................................................................... 10

ระบบภมสารสนเทศผานเครอขายอนเตอรเนต หรอ Internet GIS/MIS ......................................................... 10

ระบบฐานขอมลเชงพนท (Spatial Database System) ................................................................................ 10

ภาษา SQL ..................................................................................................................................................... 11

ภาษา PHP ..................................................................................................................................................... 12

QGIS............................................................................................................................................................... 13

PostgreSQL/PostGIS ................................................................................................................................... 13

Open Source ............................................................................................................................................... 14

pgRouting ..................................................................................................................................................... 14

Apache ......................................................................................................................................................... 16

JavaScript ..................................................................................................................................................... 16

สารบญ (ตอ) บทท หนา

HTML ............................................................................................................................................................. 17

Open Data Kit (ODK) .................................................................................................................................. 18

Geoserver ..................................................................................................................................................... 19

Dijkstra algorithm ........................................................................................................................................ 23

Web GIS ........................................................................................................................................................ 24

การจดการฐานขอมล (Database Management) ......................................................................................... 24

2.2 เอกสารงานวจยทเกยวของ ........................................................................................................................ 25

3 ......................................................................................................................................................................... 31

วธด าเนนงานวจย .............................................................................................................................................. 31

เกบต าแหนงพรอมขอมลผสงอายโดยลงพนทส ารวจพรอมกบหนวยงาน ......................................................... 31

เครองมอทใชในการวจย ................................................................................................................................. 31

ขอมลทใชในการศกษาเปนขอมล .................................................................................................................... 31

อปกรณและซอรฟแวร .................................................................................................................................... 31

ปจจยทใชในการวเคราะห ............................................................................................................................... 31

วธการด าเนนการวจย ..................................................................................................................................... 32

ตดตงระบบ ODK Aggregate (วธการตดตงแบบละเอยดแสดงไวทภาคผนวก ค) และ หนาเวบฐานขอมล ..... 32

ออกแบบแบบสอบถาม ................................................................................................................................... 33

การส ารวจภาคสนามเพอจดเกบขอมลในพนทจรง .......................................................................................... 33

น าเขาขอมลเขาสโปรแกรม QGIS ................................................................................................................... 34

Entity Relationship Diagram (ER-Diagram) ............................................................................................. 35

ใสระบบคนหาเสนทาง PgRouting ................................................................................................................. 35

การเตรยมขอมลเพอใสระบบ pgrouting ................................................................................................... 35

สารบญ (ตอ) บทท หนา

การท าแผนทบนหนาเวบ ................................................................................................................................. 38

ออกแบบหนาเวบ........................................................................................................................................ 38

หนาขอมลสวนตวของผพฒนาระบบ ........................................................................................................... 40

4 ......................................................................................................................................................................... 43

ผลการวจย ......................................................................................................................................................... 43

ผลจากการหาเสนทางทใกลทสดและการกระจายตวของโรค .......................................................................... 43

5 ......................................................................................................................................................................... 49

บทสรป ............................................................................................................................................................... 49

สรปผลการทดลอง .......................................................................................................................................... 49

ผลและวจารณการทดลอง ............................................................................................................................... 50

ปญหาและอปสรรค......................................................................................................................................... 50

ขอเสนอแนะ ................................................................................................................................................... 50

บรรณานกรม...................................................................................................................................................... 53

ภาคผนวก ก ....................................................................................................................................................... 55

แบบส ารวจสอบถามเพอเกบขอมลผสงอายและบานผสงอายดวยแอปพลเคชน ODK Collect .................... 55

โคด Xml ของแบบสอบถาม ............................................................................................................................... 56

แบบสอบถามทใชในการส ารวจ ......................................................................................................................... 132

ภาคผนวก ข..................................................................................................................................................... 137

คมอการลงโปรแกรม ODK Aggregate และ PhpPgadmin ........................................................................ 137

ขนตอนการตดตง PHP5 ........................................................................................................................... 139

ขนตอนการตดตง PostgreSQL 9.3 ......................................................................................................... 140

ขนตอนการตดตง phppgadmin.............................................................................................................. 142

ขนตอนการตดตง ODK ............................................................................................................................. 144

สารบญ (ตอ) บทท หนา

ภาคผนวก ค คมอการใชเวปไซตระบบฐานขอมลผสงอาย ............................................................................. 158

ภาคผนวก ง โคดทใชในการพฒนาระบบ ....................................................................................................... 167

ประวตผวจย .................................................................................................................................................... 222

สารบญภาพ ภาพ หนา ภาพท 1 พนทศกษาต าบลคอรม .......................................................................................................................... 3 ภาพท 2 กรอบแนวคด ......................................................................................................................................... 5 ภาพท 3 การท างานของระบบ Open Data Kit ................................................................................................ 7 ภาพท 4 ลกษณะขอมลเชงพนท ....................................................................................................................... 11 ภาพท 5 หนาเวบฐานขอมล phppgaadmin ................................................................................................. 32 ภาพท 6 หนาเวบ Aggregate .......................................................................................................................... 32 ภาพท 7 ตวอยางการสรางแบบสอบถาม .......................................................................................................... 33 ภาพท 8 ตวอยางแบบฟอรมทใชในการส ารวจขอมลผสงอายในภาคสนาม .................................................... 33 ภาพท 9 ไฟล CSV จากเวบ Aggregate ........................................................................................................ 34 ภาพท 10 จดจากไฟล CSV ทเปดดวยโปรแกรม QGIS ................................................................................... 34 ภาพท 11 ER-Diagram .................................................................................................................................... 35 ภาพท 12 หนาเวบ Open Steet Map ........................................................................................................... 36 ภาพท 13 Layer Node ถนนในโปรแกรม QGIS ............................................................................................ 36 ภาพท 14 ค าสงแสดงเสนทางใน QGIS ............................................................................................................ 37 ภาพท 15 ตวอยางคนหาเสนทางใน QGIS ....................................................................................................... 37 ภาพท 16 หนาเวบ ............................................................................................................................................ 38 ภาพท 17 หนาส าหรบลอคอน .......................................................................................................................... 38 ภาพท 18 หนาเมอลอคอนเขาสระบบส าเรจ .................................................................................................... 39 ภาพท 19 หนาส าหรบผเขาชมทวไป ................................................................................................................ 39 ภาพท 20 หนาระบบการน าทาง ....................................................................................................................... 40 ภาพท 21 หนาขอมลสวนตวของผพฒนาระบบ ............................................................................................... 40 ภาพท 22 ผลการทดลองผานหนาเวบพรอมกบจดบานผสงอายพรอมจดหนวยบรการดานสขภาพ .............. 43 ภาพท 23 ผลการทดลองผานหนาเวบพรอมกบจดบานผสงอายพรอมจดหนวยบรการดานสขภาพพรอมเสนทางทใกลทสดจากบานผสงอายไปยงโรงพยาบาล ...................................................................................... 44 ภาพท 24 การกระจายตวของผมโรคประจ าตวพรอมเสนทางทใกลทสดกบโรงพยาบาลผานโปรแกรม QGIS ........................................................................................................................................................................... 44 ภาพท 25 การกระจายตวของผพการพรอมเสนทางทใกลทสดกบโรงพยาบาล .............................................. 45 ภาพท 26 หนาเวบออกแบบฟอรม ................................................................................................................... 45 ภาพท 27 ตวอยางแบบฟอรมทใชในการส ารวจขอมลผสงอายในภาคสนาม .................................................. 46 ภาพท 28 หนาเวบ Aggregate ทใชในการดขอมล ......................................................................................... 47 ภาพท 29 หนาเวบ Phppgadmin ทใชในการเกบขอมลท ODK Aggregate ใชโหลดขอมล ...................... 47

สารบญภาพ (ตอ)

ภาพ หนาภาพท 30 หนาแรกของเวบไซตพรอมเมน ...................................................................................................... 159 ภาพท 31 หนา Login ..................................................................................................................................... 159 ภาพท 32 หนาแรกเมอลอคอนส าเรจ ............................................................................................................. 160 ภาพท 33 หนาส าหรบเพมขอมล .................................................................................................................... 160 ภาพท 34 หนาส าหรบลบขอมล ...................................................................................................................... 161 ภาพท 35 หนาส าหรบอพเดตขอมล ............................................................................................................... 161 ภาพท 36 หนาส าหรบผใชทวไป ..................................................................................................................... 162 ภาพท 37 หนาแผนทพรอมจดหนวยงานสขภาพและบานผสงอาย ............................................................... 162 ภาพท 38 หนาจดบานผสงอายพรอมเสนทางทใกลทสด ............................................................................... 163 ภาพท 39 แถบเมนเกยวกบผสงอาย ODK pgRouting ................................................................................. 163 ภาพท 40 หนาเพมเตมเกยวกบ ODK ............................................................................................................ 164 ภาพท 41 หนาเพมเตมเกยวกบผสงอาย......................................................................................................... 164 ภาพท 42 หนาเพมเตมเกยวกบ pgRouting .................................................................................................. 165 ภาพท 43 หนารวมภาพการเขาอบรม ODK .................................................................................................. 165 ภาพท 44 หนาเวบตวอยาง Heat Map ......................................................................................................... 166

สารบญตาราง

ตาราง หนา

ตารางท 1ตารางอธบายพารามเตอรการรองขอ WMS GetCapabilities ............................................................. 20 ตารางท 2ตารางอธบายพารามเตอรการรองขอ WMS GetMap .......................................................................... 21 ตารางท 3ตารางอธบายพารามเตอรการรองขอ WMS GetFeatureInfo ............................................ .................21 ตารางท 4ตารางอธบายพารามเตอรการรองขอ WFS GetCapabilities .............................................................. 22

บทท 1

บทน า

1.1 ปญหาและความส าคญ

ในปจจบนผสงอายมจ านวนเพมขนเรอยๆ ประมาณวาในป 2563 จะมประชากรทมอายตงแต 60 ป อยราว 1 ใน 6 ของประชาการทงหมด เนองมาจากคนไทยมอายยนยาวขน ดงนนการสงเสรมใหผสงอายสามารถดแลตนเองไดจะชวยท าใหการมอายยน ยาวมความสขทงทางกาย ใจ และอยในสงคมไดอยางเหมาะสม กลา วคอเปนทงผใหและผรบประโยชนในสงคมและอยางมศกดศรมากกวา การมชวตยนยาวแตตองใชชวตสวนใหญอยกบความเจบปวย ท าใหเพมเวลาของความทกขและภาวะจ าทน การเปลยนแปลง ธรรมชาต ของมนษยเมอมอายมากขน รางกายจะมการเปลยนแปลงไป ในวยเดกจะมความเจรญมากกวาความเสอม กลาวคอรางกายจะขยายขนาดทงความสงและน าหนกตว สวนผสงอายความเสอมของรางกายจะมมากกวาความเจรญ ท าใหอวยวะตางๆ ของรางกายทวไปออนแอและเกดโรคงาย แตอยางไรกตามความเสอมหรอการเปลยนแปลงจะแตกตางกนในแตละคน ขนอยกบเชอชาต กรรมพนธ วถการด ารงชวต อาหารการกน สภาพเศรษฐกจและสงคม เปนตน

ดงนนการดแลเอาใจใสผสงอายจงเปนเรองทจ าเปนอยางมากเนองจากการทผวจยไดลงพนทส ารวจพบวาสวนมากผสงอายมโรคประจ าตวและอยคนเดยวหรออยกบสามหรอภรรยาลกหลานสวนมากท างานทอนหรอแยกครอบครวไปท าใหการดแลผสงอายเปนเรองท าไดยากเนองจากปจจบนเกอบทกหนวยงานไดมการส ารวจขอมลผสงอายแตยงเปนในรปแบบแฟมขอมลท าใหการอพเดตแกไขคนหาขอมลเปนเรองทท าไดยากซงบางหนวยงานกมระบบฐานขอมลแตรปแบบการเกบขอมลไมเหมอนกนกนท าใหไมสามารถน าขอมลสวนนนๆมารวมเขากนของชนขอมลได

ปจจบนมแอปพลเคชนและเวบไซดมากมายหลายหนวยงานไดพฒนาขนส าหรบเกบขอมลผสงอาย อาท เชน ระบบสารสนเทศการจดการฐานขอมลเบยยงชพของ กรมสงเสรมการปกครองทองถน ส านกพยาบาลศาสตร มหาวทยาลยมหาวทยาลยวลยลกษณ มลนธสถาบนวจยและพฒนาผสงอายไทย แตทมาของการเกบขอมลคอใชวธการแบบเดมโดยการลงพนทสอบถาม จดใสกระดาษ แลวคอยกลบมากรอกขอมลเขาไปในโปรแกรม Microsoft excel กอนทจะสงตอใหเจาหนาทฝายคอมพวเตอรท าการอพโหลดขอมลเขาสเวบไซดของหนวยงาน ซงผวจยเหนวาเปนการท างานทซ าซอนและใชเวลา หรอบางแอปพลเคชน ผใชงานไมสามารถท าการปรบปรงแกไขแบบฟอรมในการเกบขอมลไดเอง ซงแอปพลชนในลกษณะนจะเปนปญหาในการท างานหากเวลาผานไปละความตองการในการเกบขอมลมการเพมหรอลดจ านวนขอมล หรอแมแต แตละหนวยงานยงใชระบบจดเกบขอมลเปนรปแบบเอกสารยงไมไดใชฐานขอมลเนองจากท าการลงพนทจดเกบขอมลผสงอายท ต าบลคอรม อ าเภอพชย จงหวดอตรดตถแลวพบวาผสงอายมาสามารถจ าขอมลสวนตวของตนเองได เชน เลขบตรประจ าตวประชาชน วน/เดอน/ป ทเกดดงนนผจดเกบขอมลจงตองขอบตรประชาชนของผสงอายทกคนเพอใหไดขอมลทถกตอง ปญหาตอมาทพบเมอเดนทางไปเกบขอมลแลวไมพบผสงอายอยทบานท าใหไมไดเกบขอมลโดยตรงกบผสงอายจงตองมการขอขอมล

2

จากอาสาสมครสาธารณสขประจ าหมบาน (อสม.) พบวาขอมลทไดถกจดเกบเปนเอกสารแฟมขอมลซงยากตอการคนหาขอมลของผสงอายซงตองอาศยความคนชนของ อสม.ท าใหผจดเกบขอมลเขาถงขอมลของผสงอ ายไดชาเนองจากไมมความคนชน การจดเกบขอมลแบบเอกสารท าใหเกดปญหาเวลาแกไขอพเดตขอมล ซงท าใหอาจเกดการซอนทบของขอมล,การจดเกบเอกสารไมเปนหมวดหม ท าใหการคนหาในภายหลงท าไดลาชา หนวยงานบางหนวยงาน เชน สาธารณสขอ าเภอยงไมมการวเคราะหขอมลเชงพนทกบการกระจายตวของโรค ท าใหเกดปญหาในเรองของการควบคมโรคโดยเฉพาะอยางยงโรคระบาดหรอโรคตดตอ เชน ไขเลอดออก

ดงนนผวจยจงเหนวาหามการพฒนาหรอน าแอปพลเคชนทผใชงานสามารถพฒนา ปรบปรง ปรบแกแบบฟอรมในการเกบขอมลไดดวยตนเอง กจะเปนประโยชนตอหนวยงาน และระบบบนทกขอมลภาคสนามสามารถท างานไดในขนตอนเดยวแตไดขอมลทงทอยในภาพของฐานขอมล SQL, Micrisoft Excel, และฐานขอมลเชงพนทหรอต าแหนงบานในการบนทกขอมลเพยงครงเดยว ผวจยจงมแนวคดทจะน าแอปพล เคชน Open Data Kit (ODK collect) มาใชในการท าวจยในครงนรวมกบการวเคราะหดวยระบบสารสนเทศภมศาสตร (Geographic Information System:GIS) ส าหรบออกแบบและพฒนาระบบฐานขอมลผสงอายเชงพนทบนระบบแผนทออนไลน

ปจจบนเทคโนโลย Open source มการพฒนาอยางรวดเรวและนยมใชกนอยางแพรหลาย ซง Open Data Kit (ODK) เปนสวนหนงของ Open source โดยน ามาประยกตใชส าหรบการส ารวจจดเกบขอมลภาคสนามผานอปกรณพกพาทมระบบปฏบตการ Android และอยบนมาตรฐานของ OGC เนองจากการใชงานบนอปกรณพกพาส าหรบการเกบขอมลภาคสนาม สามารถใชไดหลากหลาย เชน ดานการเกษตร ดานสาธารณสข ดานสงแวดลอม ดานภยพบต เปนตน อกทงการใชอปกรณพกพาในการส ารวจจดเกบขอมลจ านวนมากๆ จะชวยลดเวลาในการบนทกขอมลและชวยประหยดคาใชจายส าหรบการส ารวจจดเกบขอมลภาคสนามอกดวย

ODK เปนระบบทชวยส ารวจจดเกบขอมลภาคสนามผานอปกรณไรสายทสามารถท างานไดทงบนระบบ Online และ Offline ซ ง ODK จะประกอบดวย 3 เครองมอ คอ ODK Build , ODK Collect และ ODK Aggregate ซง ODK Build เปนการสรางแบบฟอรมส าหรบ ODK Collect ซงแบบฟอรมไดรบการพฒนาเปน XLS โดยใชโปรแกรม Microsoft Excel หลงจากนนท าการแปลง XLSform เปน .XML แลว แบบฟอรม .XML จะถกอพโหลดไปยง ODK Aggregat โดยเราสามารถดาวนโหลดแบบฟอรมไวท ODK Collect ในอปกรณเคลอนทบนระบบปฏบตการ Androin ซงเปนแบบฟอรมทใชในการส ารวจภาคสนาม เมอมการส ารวจจดเกบขอมลภาคสนาม ขอมลดงกลาวถกอพโหลดไปยง ODK Aggregate Server ซงระบบนจะใช PostgreSQL รวมกบ ODK Aggregate เปนฐานขอมล สวน Geoserver จะถกเชอมตอกบฐานขอมล แลวน าขอมลทอพโหลดมาแสดงบนแผนทออนไลน

3

1.2 วตถประสงคของการวจย เพอพฒนาแบบฟอรมในการเกบขอมลภาคสนามทมความหยดยนในการสรางแบบฟอรมขนมาเองของหนวยงานและหนวยงานยงสามารถใชขอมลภาคสนามทเกบมาไดมาวเคราะหผานแผนทออนไลนเพอวเคราะหการกระจายของโรคพรอมสามารถสบคนแกไขขอมลไดจากหนาเวบ

1.3 ความส าคญของงานวจย

- ไดรบแบบฟอรมทท ำใหมไดเองแลวไมตองน ำขอมลจำกกระดำษพมพเขำExcelอก

- ไดรบแผนทกำรกระจำยตวของโรคในผสงอำย

- ไดรบกำรน ำทำงดวยเสนทำงทใกลทสดจำกบำนผสงอำยไปหนวยงำนสขภำพ

1.4 ขอบเขตการวจย 1.4.1 ขอบเขตดานพนท

ภาพท 1 พนทศกษาต าบลคอรม

4

1.5 ขอตกลงเบองตน ขอมลทน ามาอาจจะไมครบเนองจากผสงอายไมอยบานท าใหการเกบขอมลขาดชวงและระบบการน าทางอยในชวงการพฒนา

1.6 กรอบแนวคด

การวเคราะหและการจดท าฐานขอมลผสงอายมกระบวนการดงตอไปน 1) ออกแบบสอบถาม 2) ทดสอบการสงขอมลไปยงฐานขอมล 3) ลงพนทเกบขอมลผสงอายในพนทศกษา 4) น าขอมลจากฐานขอมลท าการวเคราะหขอมลและจดท าระบบคนหาเสนทางโดยใชฟงคชน OSM บนโปรแกรม QGIS ในการดาวนโหลดชนขอมลน าขอมลทไดสฐานขอมลซงออกแบบและทดสอบโดยกรใชค าสง SQL รวมกบฟงกชน PostgreSQL/PostGIS พรอมกบการใช pgRouting ซงเปนฟงกชนการค านวณหาเสนทางจากบานผสงอายไปยงโรงพยาบาลทใกลทสดซงมแนวคดการค านวณจากอลกอรทม Dijkstra's Algorithm ซงเปนการคนหาทไดผลลพธเสนทางเดยวทสนทสดและท าการเรยกใชแผนทจาก Openlayer 5) ท าการออกแบบและพฒนาเวปไซตแสดงแผนทออนไลน ดวยภาษา HTML และชดค าสง JavaScript ท างานรวมกบภาษา PHP และค าสง SQL ในการเชอมตอกบฐานขอมลในการเรยกขอมลจากฐานขอมล และท าการเชอมตอเขากบระบบคนหาเสนทางโดยเรยกแผนทจาก Openlayer 6) แสดงการกระจายตวของโรคในผสงอาย

5

start

ออกแบบสอบถาม

ทดสอบการสงขอมล

No

ลงพนทเกบขอมล

ฐานขอมล

yes

แสดงขอมลบนหนาเวบ

วเคราะหระยะทางทใกลทสดกบหนวยงานสขภาพ

การกระจายตวของโรค

End

ภาพท 2 กรอบแนวคด

7

ภาพท 3 การท างานของระบบ Open Data Kit

8

1.7 นยามศพทเฉพาะ ผสงอายหมายถง ตวเลขของอายวา มอายมาก โดยนยมนบตามอายตงแตแรกเกด (Chronological age) หรอ ทวไป เรยกวา คนแก หรอ คนชรา โดยพจนานกรมฉบบ ราชบณฑตยสถาน พ.ศ. 2542 ใหความหมายของค าวา คนแก คอ มอายมาก หรอ อยในวยชรา และ ใหความ หมายของค าวา ชรา คอ แกดวยอาย ช ารดทรดโทรม นอกจากนน ยงมการเรยกผสงอายวา ราษฎรอาวโส (Senior citizen) สวน องคการอนามยโลก (World Health Organization, WHO) และองคการสหประชาชาต (United Nations,UN) ใชค าในภาษาองกฤษของผสงอายวา Older person or elderly person แตเทาทผเขยนอานจากเอกสารตางๆ ของจากทงองคการอนามยโลก และองคการสห ประชาชาต มกใชค าวา Older person มากกวา Elderly person

องคการสหประชาชาต ไดใหนยามวา "ผสงอาย" คอ ประชากรทงเพศชาย และเพศหญงซงมอาย มากกวา 60 ปขนไป (60+) โดยเปนการนยาม นบตง แตอายเกด สวนองคการอนามยโลก ยงไมมการใหนยามผสงอาย โดยมเหตผลวา ประเทศตางๆทวโลกมการนยาม ผสงอายตางกน ทงนยามตามอายเกด ตามสงคม (Social) วฒนธรรม (Culture) และสภาพรางกาย (Functional markers) เชน ในประเทศทเจรญแลว มกจดผสงอาย นบจากอาย 65 ปขนไป หรอบางประเทศ อาจนยามผสงอาย ตามอายก าหนดใหเกษยณงาน (อาย 50 หรอ 60 หรอ 65 ป) หรอนยามตามสภาพของรางกาย โดยผหญงสงอายอยในชวง 45-55 ป สวนชายสง อาย อยในชวง 55-75 ป

ส าหรบประเทศไทย "ผสงอาย" ตามพระราชบญญตผสงอาย พ.ศ.2546 หมายความวา บคคลซง มอายเกนกวาหกสบปบรบรณขนไป และมสญชาตไทย 1. สถานภาพสมรส หมายถง ความผกพนระหวางชายกบหญงในการเปนสามภรรยา แบงไดดงน โสด ไดแก ผทยงไมเคยสมรส สมรส ไดแก ผทอยรวมกนฉนสามภรรยา ไมวาจะไดท าการสมรสกนถกตองตามกฎหมายหรอไมกตาม 2. รายได หมายถง ผลตอบแทนทกจการไดรบจากการขายสนคาหรอบรการตามปกตของกจการรวมทง ผลตอบแทนอนๆ ทไมไดเกดจากการด าเนนงานตามปกต รายไดแบงออกเปน 2 ประเภท ดงน

1. รายไดจากการขาย (Sale revenue) หมายถง รายไดทเกดจากการขายสนคาหรอบรการอนเปนรายไดจากการด าเนนงานตาม ปกต เชน กจการซอขายสนคารายไดของกจการ คอ รายไดจากการขายสนคา สวนกจการใหบรการ เชนซอมเครองไฟฟา รายไดของกจการ คอ รายไดคาซอม 2. รายไดอน (Other incomes) หมายถง รายไดทมไดเกดจากการด าเนนงานตามปกตของกจการซงเปนรายไดทไมใช รายไดจากการขายสนคาหรอบรการนนเอง

Web Map Service (WMS) คอขอมลทไดจาก WMS จะเปนภาพ PNG หรอ JPEG น ามาประกอบเขาดวยกนเปนชนขอมลภมสารสนเทศ ซงสามารถดและแสดงรายละเอยดของ Attribute ได แตจะสงออกเปน Shapefile หรอวเคราะหขอมลไมได

9

Web Feature Service (WFS) เปน Feature Class ทสามารถด แสดงรายละเอยด Attribute สงออกเปน Shapefile และวเคราะหขอมลได ถาพจารณาเงอนไขตามน WFS จะดกวา WMS แนนอน แตทงนกตองขนอยกบนโยบายของหนวยงานทจะเปด service วาตองการใหผใชงานสามารถใชงานไดในระดบไหน การจะน าขอมล WMS หรอ WFS จากหนวยงานตางๆ มาใชงาน เราตองทราบชอ service ซงเปน URL และน ามาเปดในโปรแกรม หรอ Web Map API บางหนวยงานกจะมชอ service ทเปดใหบรการอยตามหนาเวบไซตเลย แตบางหนวยงานกจะตองสอบถามเองจากเจาหนาทโดยตรง การเปดใชงาน service สวนมากจะเปนแบบ WMS มากกวา WFS Free and Open Source Software for Geospatial (FOSS4G) คอ ซอฟแวรรหสเปดทางดานภมสารสนเทศ ซงเปนสวนหนงของ OSGeo ทประกอบไปดวย Free Software, Free Data, มาตรฐานขอมล และ Open Hardware 1.8 ค าถามงานวจย

จากการเกบขอมลสขภาพผสงอายดวยแอปพลเคชน ODK สามารถน ามาวเคราะหการกระจายตวเชงพนทของ โรค รายได สขภาพ ฯลฯ ไดหรอไม

ระบบฐานขอมลผสงอายออนไลนสามารถชวยใหเจาหนาทในหนวยงานทเกยวของท างานไดสะดวกรวดเรวมากยงขนหรอไม

บทท 2

เอกสารงานวจยทเกยวของ

2.1 ทฤษฎทเกยวของ

1. ระบบภมสารสนเทศผานเครอขายอนเตอรเนต หรอ Internet GIS/MIS เปนการประยกตใชระบบอนเตอรเนตกบระบบ งานเพอจดการขอมลภมสารสนเทศ GIS และน าขอมลดงกลาวมาชวยวเคราะหและแกปญหาตางๆ เพอเพมประสทธภาพของการจดการขอมลและใหกาวทนตอการเปลยนแปลง ตางๆ จงไดมการพฒนาการใชงานรวมกนของระบบภมสารสนเทศ GIS และระบบจดการขอมล MIS

1.1 ระบบสารสนเทศทางภมศาสตร (Graphic Information System หรอ GIS) คอ กระบวนการท างานเกยวกบขอมลชงพนท (spatial data) ดวยระบบคอมพวเตอร โดยการก าหนดขอมลเชงบรรยายหรอขอมลคณลกษณะ (attribute data) และสารสนเทศ เชน ทอย บานเลขท ทมความสมพนธกบต าแหนงในเชงพนท (spatial data) เชน ต าแหนงบาน ถนน แมน า เปนตน ในภาพของ ตารางขอมล และ ฐานขอมล ระบบ GIS ประกอบไปดวยชดของเครองมอทมความสามารถในการเกบรวบรวม ปรบปรงและการสบคนขอมล เพอจดเตรยม ปรบแตง วเคราะหและการแสดงผลขอมลเชงพนท เพอใหสอดคลองตามวตถประสงคการใชงาน ซงรปแบบและความสมพนธของขอมลเชงพนททงหลาย จะสามารถน ามาวเคราะหดวย GIS ใหสอความหมายในเรองการเปลยนแปลงทสมพนธกบชวงเวลาได 1.2 ระบบสารสนเทศเพอการจดการ (Management Information System หรอ MIS) หมายถง ระบบคอมพวเตอร หรอขนตอนทชวยในการจดเกบสารสนเทศเพอใชในการบรหารและการจดการองคกรไดอยางมประสทธภาพ ระบบสารสนเทศเพอการจดการนจะมสวนครอบคลมถง บคคล เอกสาร เทคโนโลย และขนตอนในการท างาน เพอทจะแกปญหาทางธรกจไมวาทาง ราคา สนคา บรการ หรอกลยทธตางๆ ระบบสารสนเทศเพอการจดการจะแตกตางจากระบบสารสนเทศทวไป กลาวคอระบบนจะใชในการวเคราะหระบบอนๆ เพอน ามาประยกตใช ในทางวชาการค าวาระบบสารสนเทศเพอการจดการนถกใชในสวนของรปแบบการจดการขอมล เชน ระบบผเชยวชาญ หรอ ระบบชวยในการตดสนใจ (http://www.thaiwater.net/web/index.php/knowledge/ 130- knowledge/298-igis.html) 2. ระบบฐานขอมลเชงพนท (Spatial Database System) ระบบจะมงเนนขอมลทเกยวกบพนท ซงขอมลเหลานสามารถแบงลกษณะของขอมลเชงพนทเปน 3 ลกษณะ ดงน 1.จด (Point) เปนลกษณะทใชแสดงต าแหนงของพนทนนๆ เชน จดสถานทส าคญ 2. เสน (Line) เปนลกษณะทใชแสดงลกษณะเชอมตอของพนทโดยทวไปจะแสดงเปนกลมของเสน (Polyline) เชน ทางน า ทางถนน เปนตน

11

3. รปปด (Polygon) เปนลกษณะทใชแสดงพนทหรอขอบเขต เชน พนทจงหวด พนททะเลสาบ เปนตน ดงภาพ 1 จะแสดงลกษณะขอมลเชงพนททง 3 ลกษณะ

ภาพ a ภาพ b ภาพ c ภาพท 4 ลกษณะขอมลเชงพนท

3. ภาษา SQL เปนภาษามาตรฐานในการเขาถง ฐานขอมล เราสามารถใชงานภาษา SQL ไดจากโปรแกรมตางๆ ทตอง

ท าการกบระบบฐานขอมล เชน ใช SQL ในการท าการดงขอมล (Retrieve Data) จากฐานขอมล ซงสามารถน ามาใชไดดงน ใชในการสบคนขอมลในฐานขอมล , ใชใสขอมลเพมเขาไปยงฐานขอมล , ใชปรบปรงขอมลในฐานขอมล ,ใชลบรายการทเราไมตองการออกจากฐานขอมล , ใชสรางฐานขอมลขนมาใหม , ใชสรางตาราง(Table) ในฐานขอมล , ใชสราง Stored Procedure ในฐานขอมล , ใชสราง Views ในฐานขอมล ,ใชก าหนดสทธใหกบตาราง (Table), Procedure และ Views โดยแมวา SQL เปนมาตรฐานแตกยงมหลาย เวอรชน ซงกจะมความแตกตางกนออกไป ในแตละผลตภณฑอกดวย แตโครงสรางหลกในการ SELECT, INSERT INTO, UPDATE หรอ DELETE กจะมโครงสรางเดยวกน ภาษา SQL สวนมากจะใชกบเวบไซต เพอแสดงผลขอมลจากฐานขอมล DBMS ไมวาจะเปน Microsoft Access, SQL Server, MySQL, Oracle หรอใขงานรวมกบระบบฐานขอมล RDBMS ไมวาจะเปน MS SQL Server, IBM DB2, Oracle, MySQL และ Microsoft Access และสามารถใชในการก าหนดในระบบวเคราะหขอมล (Analysis Tools) ทเปดชองใหเราสามารถท าการใส หรอ ปรบปรง SQL ไดดวยตวเองดงนนหากเราสามารถใชงาน SQL ไดกยอมจะเปนประโยชนในการท าความเขาใจในการท างานกบระบบฐานขอมลมากยงขน อานความหมายของสงทใชงานไดอยางลกซงขนอกดวย

[ทมา:http://www.9experttraining.com/articles] สบคนเมอ 10 เมษายน 2561

12

4. ภาษา PHP ภาษาคอมพวเตอรในลกษณะเซรฟเวอร-ไซด สครปต โดยลขสทธอยในลกษณะโอเพนซอรส ภาษาพเอชพ

ใชส าหรบจดท าเวบไซต และแสดงผลออกมาในรปแบบ HTML โดยมรากฐานโครงสรางค าสงมาจากภาษา C ภาษา Java ซง ภาษาPHP นนงายตอการเรยนร ซงเปาหมายหลกของภาษาน คอใหนกพฒนาเวบไซตสามารถเขยน เวบเพจ ทมความตอบโตไดอยางรวดเรว

โครงสราง ควบคมของ PHP จะมความคลายคลงกบ C/C++ มาก เชน if , for , switch และมบางสวนทคลาย Perl สามารถก าหนดตวแปรโดยไมตอง ก าหนดชนดของตวแปรวาจะเปน int , float, boolean เปนตน การแสดงผลของPHP จะปรากฏในลกษณะHTML ซงจะไมแสดงค าสงทผใชเขยน ซงเปนลกษณะเดนท PHP แตกตางจากภาษาในลกษณะไคลเอนต-ไซด สครปต เชน ภาษา Java Script ทผชมเวบไซตสามารถอาน ดและคดลอกค าสงไปใชเองได นอกจากนPHP ยงเปนภาษาทเรยนรและเรมตนไดไมยาก โดยมเครองมอชวยเหลอและคมอทสามารถหาอานไดฟรบนอนเทอรเนต ความสามารถการประมวลผลหลกของPHP ไดแก การสรางเนอหาอตโนมตจดการค าสง การอานขอมลจากผใชและประมวลผล การอานขอมลจากฐานขอมล

ความสามารถของภาษา PHP - เปนภาษาทมลกษณะเปนแบบ Open source ผใชสามารถ Download และน า Source code ของ PHP ไปใชไดโดยไมเสยคาใชจาย - เปนสครปตแบบ Server Side Script ดงนนจงท างานบนเวบเซรฟเวอร ไมสงผลกบการท างานของเครอง Client โดย PHP จะอานโคด และท างานทเซรฟเวอร จากนนจงสงผลลพธทไดจากการประมวลผลมาทเครองของผใชในรปแบบของ HTML ซงโคดของ PHP นผใชจะไมสามารถมองเหนได - PHP สามารถท างานไดในระบบปฎบตการทตางชนดกน เชน Unix, Windows, Mac OS หรอ Risc OS อยางมประสทธภาพ เนองจาก PHP เปนสครปตทตองท างานบนเซรฟเวอร ดงนนคอมพวเตอรส าหรบเรยกใชค าสง PHP จงจ าเปนตองตดตงโปรแกรมเวบเซรฟเวอรไวดวย เพอใหสามารถประมวลผล PHP ได - PHP สามารถท างานไดในเวบเซรฟเวอรหลายชนด เชน Personal Web Server(PWS) , Apache, OmniHttpd และ Internet Information Service(IIS) เปนตน - ภาษา PHP สนบสนนการเขยนโปรแกรมเชงวตถ (Object Oriented Programming) - PHP มความสามารถในการท างานรวมกบระบบจดการฐานขอมลทหลากหลาย ซงระบบจดการฐานขอมลทสนบสนนการท างานของ PHP เชน Oracle, MySQL , Solid, mSQL และ MS SQL เปนตน - PHP อนญาตใหผใชสรางเวบไซตซงท างานผานโปรโตคอลชนดตางๆ ได เชน LDAP, IMAP, SNMP, POP3 และ HTTP เปนตน - โคด PHP สามารถเขยน และอานในรปแบบของ XML ได [ทมา : http://pasaphp.blogspot.com/ ] สบคนเมอ 10 เมษายน 2561

13

5. QGIS โปรแกรม Desktop GIS ประเภทหนงทมประสทธภาพในการน ามาใชจดการขอมลปรภมจดอยในกลม

ซอฟตแวรรหสเปด (Free and Open Source Software: FOSS) ทใชงานงาย ลกษณะการใชงานเปนแบบ Graphic User Interface ซงสะดวกตอการใชงาน ไมวาจะเปนการเรยกใชขอมลภาพ ขอมลตาราง การแสดงผลตาราง การแสดงผลกราฟ ตลอดจนสามารถสบคนขอมลวเคราะหขอมลและน าเสนอขอมลไดในรปแบบแผนททสวยงาม นอกจากน ซอฟตแวร QGIS ยงสามารถเพมความสามารถของโปรแกรมอยางไมมขดจ ากด โดยการสรางสวนเสรม (plug-in) ใหโปรแกรม เชน สวนเสรมส าหรบการอางองต าแหนงโลก (Raster georeferencing) การน าเขาขอมลเวคเตอรสฐานขอมล (PostGIS import tool) การเชอมตอกบเครองรบสญญาณจพเอส การสรางภาพดดแกออรโท (Orthorectification) และการปรบปรงความละเอยดเชงจดภาพ ดวยขอมลชวงคลนเดยว (Pan0sharpening) ของขอมลภาพถายจากดาวเทยมธออส ซงเปนการพฒนาโดยคนไทยภายใต ความรวมมอระหวางจฬาลงกรณมหาวทยาลย และส านกงานพฒนาเทคโนโลยอวกาศและภมสารสนเทศ (องคการมหาชน) หรอ สทอภ. (สารสนเทศภมศาสตร, 2556)

6. PostgreSQL/PostGIS PostgreSQL ค อ ร ะบบจ ด ก า ร ฐ านข อม ล เ ช ง ว ต ถ - ส ม พ นธ ( Object-Relational Database

Management System หรอ ORDBMS) ซ งปรบปรงจากตนแบบระบบฐานขอมล POSTGRES 4.2 ของมหาวทยาลยแคลฟอรเนย วทยาลยเขตเบอรกเลย (UC Berkeley) ภายใตความควบคมของ Professor Michael Stonebraker โดยไดรบเงนวจยสนบสนนจาก the Defense Advanced Research Project Agency (DARPA) , the Army Research Office (ARO), the National Science Foundation (NSF) และ ESL, Inc. PostgreSQL มตนตอมาจากโครงการ University Ingres ตงแตป ค.ศ. 1977 ภายใตการควบคมการวจยโดย Professor Michael Stonebraker ซ ง ต น แบบข อ ง Ingres ไ ด น า ไ ปปร บป ร ง เ ป น เ ช ง พ า ณ ช ย โ ด ย Relational Technologies/Ingres Corporation

ตอมาในป ค.ศ. 1986 Professor Michael Stonebraker เลงเหนวาระบบฐานขอมลเชงสมพนธในขณะนน ไมเพยงพอในการรองรบระบบงานดานฐานขอมลทซบซอนในอนาคตได ซงตองการความสามารถพเศษเพมเตมแบงออกเปน 3 หวขอใหญๆ คอ

1. ระบบจดการฐานขอมล (Database Management System) ตองการองคความรและสถาปตยกรรมโครงสรางใหมในการจดการฐานขอมลใหมประสทธภาพยงขน

2. ระบบจดการฐานความร (knowledge-based Management System) เปนโครงสรางใหมเพอสรางฐานความร ซงเหนไดทวไปในการจดการกฎเกณฑและขอก าหนดทางธรกจ (Business Rules and Policy) องคความรใหมทน ามาเพมเตมลงในระบบฐานขอมล เพอใชในการสนบสนนความสามารถดงกลาว ไดแก database constraints, triggers, rules และ transaction integrity เปนตน

14

3. ระบบจดการวตถ (Object Management System) เปนโมเดลใหมทจ าเปนตองขยายตอเพอชวยเสรมใหระบบฐานขอมลเชงสมพนธสามารถรองรบระบบงานทตองการประเภทขอมล (data type) และ โมเดลเชงวตถ (object-oriented model) ระบบงานทตองการใชโมเดลเชงวตถและระบบจดการฐานขอมล ไดแก งานประเภท CAD-CAM หรอ multimedia เปนตน องคความรทน ามาเพมเตมเพอใชในการสนบสนนความสามารถดงกลาว ไดแก inheritance, user-defined data types และ functions เปนตน แนวความคดตางๆ เหลานถกน ามาวจยและตพมพในวารสารทางวชาการตางๆ เปนจ านวนมากในป ค.ศ. 1986 ซงระบบจดการฐานขอมลเชงพาณชยในปจจบนกไดรบ

PostGIS คอ มการเพมเตมในสวนของฐานขอมลเชงวตถสมพนธ (Object-Relational Databases System) ของ PostgreSQL ใหมการรองรบระบบสารสนเทศภมศาสตร (GIS Object) เขามาเกบไวในฐานขอมล (Database) PostGIS จะสนบสนน GISTlndexs กบ R-tree Indexs และฟงกชน เพÉอใชเปนพนฐานในการวเคราะห GIS Object และ OpenGIS “Simple Features for SQL” (SFSQL)แนวความคดเหลานน ามาใชเชนกน

[ทมา : http://oknation.nationtv.tv/blog/myPostgreSQL/2012/11/01/entry-1 ]

7. Open Source เปนซอฟตแวรประเภทฟรอกชนดหนงโดยจะเปดใหผใชงานสามารถเหน Source Code ของโปรแกรมท

พฒนาขน หรอน าเอาโปรแกรมหรอซอฟตแวรนน ๆ ไปพฒนาตอ ยอดในแนวทางของอน ๆกไดแตกตองอยภายใตขอตกลงและขอก าหนดของผพฒนา Open Source อาจเรยกไดอกแบบวา “ซอฟตแวรเสร” ซงไมมขอจ ากดในการน าเอาไปใชงาน Open Source ยงรวมไปถงระบบปฏบตการ Linux ซงเปนระบบปฏบตการทเปดใหผใชงานไดใชงาน รวมถงมนกพฒนาระบบทงหลายน าเอา Linux มาสรางประโยชนใหสงคมออนไลนมากมาย ไมวา จะน าเอาไป Config เปน Web Server ทน าเอาซอฟตแวร เสรอยางเชน PHP และ PosgreSQL รวม ไปถง phppgAdmin มาใชงาน ซอฟตแวรเหลานลวนแลวแตเปนซอฟตแวร Open Source ดวยกน ทงสน แตถาเปนซอฟตแวร Open Source ในฝงของระบบปฏบตการ Windows เชนโปรแกรมเวบ เบราวเซอร Firefox กถอวาเ ป น ซอฟต แ ว ร Open Source ท ส า ม า ร ถน า เ อ า Source Code มา พฒนาต อ ยอด ได เ อ ง เ ช น ก น (https://downloaddd.in.th/knowledge/faq/open-source)

8. pgRouting pgRouting Library เปนเครองมอในการวเคราะหค านวนหาเสนทางจากสถานพยาบาลไปยงต าแหนงของสถานททองเทยวหากเกดกรณเหตฉกเฉนขน pgRouting Library ซงเปนเครองมอทใชในการวเคราะหหาเสนทางทสนทสด ตามระยะทางเสนทางสญจรปกตดงน pgRouting เปนเครองมอทท างานรวมกบฐานขอมลเชงพนท

15

PostgreSQL/PostGIS โดยเพมฟงกชนการค านวณหาระยะทาง (Network Analysis) และการวเคราะหโครงขายอนๆ(pgRouting Contributors, 2013) pgRouting ไดพฒนามาจาก pgDijkstra เขยนโดย Sylvain Pasche จาก camptocamp ตอมาไดมการน าไปพฒนาตอโดยบรษท Orkney ประเทศญปน และเปลยนชอใหม เปน pgRouting อยางเปนทางการ (Kastl and Junod, 2011) วตถประสงคหลกของ pgRouting คอ จดหาฟงกชนส าหรบการใชงานใน PostgreSQL/PostGIS เพอสรางเครองมอในการค านวนหาระยะทาง ซงจะคลายๆ กบ ชดค าสงในโปรแกรมบางโปรแกรม เชน ค าสงการคนหาระยะทางทใกลทสดในโปรแกรม ArcGIS Desktop หรอการขอเสนทางใน Google Maps ไมเฉพาะในเรองของระยะทางบนถนนเทานน แตสามารถ ใชไดกบขอมลอะไรกไดทเกยวกบระยะทาง การสนเปลองเวลา น ามน เงน เชน เสนทางเกยวกบการเดนเรอ และระบบเนตเวรคแมขายบนอนเตอรเนต เปนตน นอกจาก pgRouting สามารถค านวณหาระยะทางทสนทสดและเรวทสดแลว pgRouting ยงสามารถชวยในการวางแผนการเดนทางในการจดสงสนคาหลายๆ ทในการเดนทางครงเดยวกน เชน จะไปสงของใหลกคาทงหมด 4 ท โดยเรมตนเดนทางจากโรงงานผผลต ควรจะ ไปสงของใหลกคารายใดกอนหลง ตามล าดบ เพอชวยในการประหยดเวลาและน ามน ซงฟงกชนของ pgRouting มทงหมดดงน

Topology Functions pgr_createTopology - to create a topology based on the geometry. pgr_createVerticesTable - to reconstruct the vertices table based on the source and target information. pgr_analyzeGraph - to analyze the edges and vertices of the edge table. pgr_analyzeOneway - to analyze directionality of the edges. pgr_nodeNetwork -to create nodes to a not noded edge table. Routing Functions

All pairs - All pair of vertices. pgr_floydWarshall - Floyd-Warshall’s Algorithm pgr_johnson- Johnson’s Algorithm pgr_astar - Shortest Path A* pgr_bdAstar - Bi-directional A* Shortest Path pgr_bdDijkstra - Bi-directional Dijkstra Shortest Path

dijkstra - Dijkstra family functions pgr_dijkstra - Dijkstra’s shortest path algorithm. pgr_dijkstraCost - Use pgr_dijkstra to calculate the costs of the shortest paths. Driving Distance - Driving Distance pgr_drivingDistance - Driving Distance

16

Post processing pgr_alphaShape - Alpha shape computation pgr_pointsAsPolygon - Polygon around set of points pgr_ksp - K-Shortest Path pgr_trsp - Turn Restriction Shortest Path (TRSP) pgr_tsp - Traveling Sales Person

ซงงสวนใหญฟงกชนการคนหาเสนทางทสนทสดทใชมดงน 1.ฟงกชน One to One เสนทางจากNodeหนงไปยงอกNodeหนง 2.ฟงกชน One to Many เสนทางจากNodeหนงไปยงอกหลายNode 3.ฟงกชน Many to One เสนทางจากหลายNodeไปยงอกNodeหนง 4.ฟงกชน Many to Many เสนทางจากหลายNodeไปยงอกหลายNodeหนง

ซงปจบน pgRouting เปนเวอรชน 2.5 สามารถดไดจาก(https://workshop.pgrouting.org/2.5/) (Choosumrong et al., 2012) 9. Apache

คอ Web server พฒนามาจาก HTTPD Web Server โดยเจา Apache นจะท าหนาทในการจดเกบ Homepage และสง Homepage ไปยง Browser ทมการเรยกเขา ยง Web server ทเกบ HomePage นนอย ซงปจจบนจดไดวาเปน web server ทม ความนาเชอถอมาก เนองจากเปนทนยมใชกนทวโลก อกทงอาปาเชยงเปนซอฟตแวร แบบ โอเพนซอรส ทเปดใหบคคลทวไปสามารถเขามารวมพฒนาสวนตางๆ ของอาปาเชได ซงท าใหเกดเปน โมดล ทเกดประโยชนมากมาย เชน mod_perl,mod_python หรอ mod_php และท างานรวมกบภาษาอนได แทนทจะเปนเพยงเซรฟเวอรทใหบรการเพยงแค HTML อยางเดยว โดยสามารถหา Download ไดจาก website www.apache.org นอกจากนอาปาเชเองยงมความสามารถอนๆ ดวย เชน การยนยนตวบคคล (mod_auth,mod_access, mod_digest) หรอเพมความปลอดภยในการสอสารผาน โปรโตคอล https (mod_ssl) และยงมโมดลอนๆ ทไดรบความนยมใช เชน mod_vhost ท าใหสามารถสรางโฮสทเสมอน ภายในเครองเดยวกนได หรอ mod_rewrite ซงเปนเครองมอทจะชวยให url ของเวบนนอานงายขน

10. JavaScript ภำษำคอมพวเตอรส ำหรบกำรเขยนโปรแกรมบนระบบอนเทอรเนตทก ำลงไดรบควำมนยมอยำงสง Java

JavaScript เปนภำษำสครปตเชงวตถ ซงในกำรสรำงและพฒนำเวบไซต เพอใหเวบไซตดมกำรเคลอนไหว สำมำรถ

ตอบสนองผใชงำนไดมำกขน ซงมวธกำรท ำงำนในลกษณะ "แปลควำมและด ำเนนงำนไปทละค ำสง" ( interpret)

17

หรอเรยกวำ ออบเจกโอเรยลเตด (Object Oriented Programming) ทมเปำหมำยในกำรออกแบบและพฒนำ

โปรแกรมในระบบอนเทอรเนต ส ำหรบผเขยนดวยภำษำ HTML สำมำรถท ำงำนขำมแพลตฟอรมได โดยท ำงำน

รวมกบ ภำษำ HTML และภำษำ Java ไดทงทำงฝงไคลเอนต (Client) และทำงฝงเซรฟเวอร (Server) JavaScript

ถกพฒนำขน โดยใชชอวำ Live Script ออกมำพรอมกบ Netscape Navigator 2.0 เพอใชสรำงเวบเพจโดยตดตอ

กบเซรฟเวอรแบบ Live Wire ตอมำปรบปรงระบบของบรำวเซอรเพอใหสำมำรถตดตอใชงำนกบภำษำจำวำไดและ

ไดปรบปรง LiveScript ใหม แลวตงชอใหมวำ JavaScript สำมำรถท ำใหกำรสรำงเวบเพจ มลกเลนตำงๆมำกมำย

และยงสำมำรถโตตอบกบผใชไดอยำงทนท ไดถกก ำหนดใหเปนมำตรฐำนโดย ECMA กำรท ำงำนของ JavaScript

จะตองมกำรแปลควำมค ำสง ซงขนตอนนจะถกจดกำรโดยบรำวเซอร ดงนน JavaScript จงสำมำรถท ำงำนได

เฉพำะบนบรำวเซอรทสนบสนน ซงปจจบนบรำวเซอรเกอบทงหมดกสนบสนน JavaScript แลว (MindPHP,

2560)

11 HTML ภำษำพนฐำนทใชในกำรเขยนเวบไซต (Website) เพอใหขอมลแสดงผลบนทเวบบรำวเซอร (Web Browser) โดยดงขอมลผำนอนเตอรเนต (Internet) ในรปแบบของขอควำม รป เสยง เปนตน เปนภำษำทงำยตอกำรเรยนร สำมำรถก ำหนดรปแบบและโครงสรำงไดงำย ไฟลทบนทกจะมนำมสกล .html .htm Text Editor ทนยมในงำนเขยนเวบไซตไดแก Dreamweaver, Edit Plus, Notepad++, Notepad Web Browser คอสวนทใชแสดงผล เชน IE, Firefox Chrome, Safari, Opera เปนตนโครงสรางของภาษา HTML การเขยนโฮมเพจดวยภาษา HTML นน เอกสาร HTML จะประกอบดวย สวนประกอบ 2 สวน ดงน 1) สวน Head คอสวนทจะเปนหว (Header) ของหนาเอกสารทวไป หรอสวนชอ เรอง (Title) ของหนาตางการท างานในระบบ Windows 2) สวน Body จะเปนสวนเนอหาของเอกสารนนๆ ซงจะประกอบดวย Tag ค าสง ในการจดรปแบบ หรอตกแตงเอกสาร HTML โดยทงสองสวนดงกลาวจะอยภายใน Tag โดยค าสงเรมตนของเอกสาร HTML คอ <HTML>....</HTML> ค าสงเรมตนการเขยนเวบ <HEAD>....</HEAD> เปนสวนหวของเวบเพจ บอกคณสมบตของเวบเพจ <TITLE>....</TITLE> ใชบอกชอของเวบเพจ <BODY>....</BODY> เปนสวนส าคญทสด เพราะเปนสวนทแสดงเนอหาทงหมด ซงรวมถง ขอความ เสยง ตาราง การเชอมโยง (MindPHP, 2560)

18

12. Open Data Kit (ODK) ODK คอ ชดเครองมอระบบโอเพนซอร ประกอบดวย 6 เครองมอหลก คอ ODK Build , ODK Collect ,ODK Central,ODK XLSForm,ODK Briefcaseและ ODK Aggregate ซง ODK Build เปนการสรางแบบฟอรมส าหรบ ODK Collect ซงแบบฟอรมไดรบการพฒนาเปน XLS โดยใชโปรแกรม Microsoft Excel หลงจากนนท าการแปลง XLSform เปน .XML แลว แบบฟอรม .XML จะถกอพโหลดไปยง ODK Aggregate โดยเราสามารถดาวนโหลดแบบฟอรมไวท ODK Collect ในอปกรณเคลอนทบนระบบปฏบตการ Android ซงเปนแบบฟอรมทใชในการส ารวจภาคสนาม เมอมการส ารวจจดเกบขอมลภาคสนาม ขอมลดงกลาวถกอพโหลดไปยง ODK Aggregate Server ซงระบบนจะใช PostgreSQL รวมกบ ODK Aggregate เปนฐานขอมล ODK Central เปน ODK Server ทางเลอกคลายกบ ODK Aggregate ODK XLSForm คอแบบฟอรมมาตรฐานทออกแบบดวยโปรแกรม Microsoft Excel และสามารถแปลงไปเปน XForms ของ ODK Collect ODK Briefcase คอ โปรแกรมคอมพวเตอรทสามารถดงขอมลหรอใสขอมลหรอแปลงขอมล บน ODK Server เหมอน ODK aggregate

12.1 ODK bulid

เปนเวบใหบรการการสรางแบบฟอรมทใชรวมกบแอพพลเคชนทใชเกบขอมล เชน ODK Collectซงสามารถออกแบบฟอรมไดอยางอสระ

12.2 ODK Collect คอ แอนดรอยดโอเพนซอรสทใชแทนรปแบบกระดาษทใชในการรวบรวมขอมลจากการส ารวจ สนบสนนประเภทค าถามและค าตอบทหลากหลายและออกแบบมาเพอท างานไดดโดยไมตองเชอมตอเครอขาย เกบรวบรวมฟอรมเปนล าดบปอนขอมลทใชตรรกะแบบฟอรมขอ จ ากด ในการเขาและการท าซ าโครงสรางยอย ผใชท างานผานพรอมตและสามารถบนทกการสงไดทกเมอ 12.3 ODK Aggregate คอ โอเพนซอรสเวบ server ทไวเกบขอมลจาก ODK Collect สามารถ วเคราะหขอมล แสดงขอมล จากแอปพลเคชน ODK Collect หรอ โปรแกรมทสามารถสงขอมลเขามาได สนบสนนการสงขอมลระยะไกลของทกขอมลและสามารถออกแบบไดทกๆระบบปฏบตการ

12.4 ODK Briefcase

คอ โปรแกรมคอมพวเตอรทสามารถดงขอมล ใสขอมล แปลงขอมล จากฟอรมขอมลบน ODK Server เหมอนกบ ODK Aggregate สามารถยายนยามแบบฟอรมและบนทกขอมลระหวาง แตละ ODK Server เกบแบบฟอรมไวในเครองอขงเราหรอสงออกเอามาใชประโยชนได

19

12.5 ODK XLSForm

คอ แบบฟอรมมาตรฐานทสามารถสรางงายๆดวยโปรแกรม Microsoft Excel XLSForms งายตอการเรมตนใชงาน และเขยนแบบฟอรมทมความซบซอนได โดยเมอออกแบบฟอรมโดย โปรแกรม Microsoft Excel เสรจแลวสามารถแปลงมาเปน XForms ทสามารถใชไดกบเครองมอ ODK การออกแบบรปแบบของ XLSForm สามารถออกแบบโดย XLSForm ออนไลน ,XLSForm ออฟไลนหรอถาเราสามารถใชค าสงกบ Command line ไดดกใช Pysform ซง Pysform คอค าสงนงใน libraly ของ Python ทสามารถใชไดเหมอนกบ XLSForm ออนไลน,XLSForm ออฟไลน

12.6 ODK Central

คอ Open Data Server ทางเลอกส าหรบการพฒนาในชวงแรก ทท างานเหมอน ODK Aggregate ทสามารถจดการผใชงานและก าหนดสทธผใช จดเกบแบบฟอรมและสามารถใช ODK Collect เชอมตอเพอดาวนโหลดแบบฟอรมและสงขอมลไปยง Server เหมอน ODK Aggregate โดยเปาหมายของโปรแกรมนคอสรางโปรแกรมทงายตอการตดตง ใชงานงายและมฟงกชนการท างานใหมๆดวยการใช API แบบโปรแกรม REST,OpenRosa และ O Data

13. Geoserver

GeoServer เปนแมขายแผนทแบบ open source ทรองรบมาตรฐาน ISO/OGC ทง WMS WFS และ WCS นอกจากนนยงรองรบการก าหนดการแสดงผลดวย Style Layer Description (SLD) และการคดกรอง การเขาถงขอมลดวย มาตรฐาน Filter Encoding ขดความสามารถนเกดจากการผนวกรวมความสามารถของซอฟตแวร GeoTools Geoserver พฒนาดวย Java ดงนน Geoserver จงเปน Serverlet การใชงาน Geoserver สามารถเชอมตอกบขอมลภมศาสตรไดหลากหลาย ทงในรปแบบของ Vector ทเปน file based เชน Shapefile หรอ Geospatial Database เชน PostGIS, Oracle, ArcSDE, DB2, MySQL และ SQL Server เปนตน หรอเชอมตอกบขอมลทเปน Raster เชน ArcGrid และ GeoTIFF เปนตน การเรยกใชและปรบแตง Map Service โดยใช Geoserver สามารถท างานผานทาง Web Browser ไดทงสน ซง WMS และ WFS มลายละเอยดดงตอไปน 13.1. การใหบรการแผนทออนไลนในรปแบบ WMS (Web Map Service) WMS (Web Map Service) เปนขอก าหนดมาตรฐานทใหอนเทอรเฟสแบบ HTTP ส าหรบการรองขอภาพแผนททมพกดจากฐานขอมลภมสารสนเทศทถกเผยแพรผานเครอขาย Internet/Intranet การรองขอผาน WMS จะระบถงชนขอมลภมศาสตรและพนททสนใจทจะประมวลผล การตอบสนองจากการรองขอจะอยในลกษณะของภาพแผนททมพกด (เชน JPEG, PNG, ฯลฯ) ซงสามารถแสดงผลไดบนเบราวเซอร กอนทจะเขาใชบรการ ผใชจะตองรวาระบบใหบรการนนๆ มอะไรใหบรการอยบาง ระบบใหบรการทสนบสนนมาตรฐาน OGC

20

สามารถตรวจสอบรายละเอยดการใหบรการในสวนของภาพแผนทได ผานการรองขอตามมาตรฐาน WMS และเรยกใชบรการจากรายการ Request ตวอยางเชน WMS_get....(GetCapabilities, GetMap, GetFeatureInfo, etc) ตามดวยความตองการในการรองขออนๆ WMS (Web Map Service) ประกอบดวย 3 Operation หลก ดงน 1. GetCapabilities คอการรองขอขอมลรายละเอยด คณสมบต และความสามารถของแมขายเพอขอใชบรการแผนท ในรปแบบ XML เชน Name (ชอชนขอมล) , BoundingBox (ขอบเขตขอมล) , Style (การแสดงผล), SRS (ระบบพกด) และอนๆ เปนตน โดยมตวอยางโครงสรางของเอกสารการรองขอดงน

ตารางท 1 ตารางอธบายพารามเตอรการรองขอ WMS GetCapabilities

ล าดบ พารามเตอร ค าอธบาย 1 bbox คาพกดสองจดประกอบเปนภาพสเหลยมผนผา คอ พกดลางซาย (x,y) และ พกดบน

ขวา (x,y) ตามล าดบ ทงนตองสมพนธกบระบบพกดทระบในตวแปร srs ดวย 2 styles เลอก style ส าหรบแสดงผลท WMS เตรยมไวให (ถาไมระบจะใช default ท

ผใชบรการก าหนดไว) 3 format ฟอรแมทของภาพแผนททจะสงกลบมาใหผขอใชบรการ 4 request ชอของ operation ดงเชน GetMap, GetCapabilities เปนตน 5 layers ชอของชนขอมลแบบเรยงล าดบโดยมเครองหมาย “,” ขน 6 srs ระบบพกด EPSG:4326 (ระบบพกดภมศาสตร)

2. GetMap คอการรองขอภาพแผนท ผใชสามารถระบชอชนขอมล ขอบเขตพนท ขนาดจดภาพ และรปแบบแรสเตอร แมขายจะตอบสนองดวยภาพแผนท ท Web browser ทวไปอานได เชน GIF PNG JPEG TIFF และอนๆ เปนตน โดยมตวอยางโครงสรางของเอกสารการรองขอดงน

http://localhost:8080/geoserver/wms?&request=getCapabilities &layers=Workspace:Layername&bbox=97,5,105,20&styles=administrator &srs=EPSG:4326

http://localhost:80/geoserver/wms?bbox=97,5,105,20&styles=administrator &format=image/png&request=GetMap&layers=Workspacename:Layername &width=550&height=250&srs=EPSG:4326

21

ตารางท 2 ตารางอธบายพารามเตอรการรองขอ WMS GetMap

ล าดบ พารามเตอร ค าอธบาย 1 bbox คาพกดสองจดประกอบเปนภาพสเหลยมผนผา คอ พกดลางซาย (x,y) และ พกดบน

ขวา (x,y) ตามล าดบ ทงนตองสมพนธกบระบบพกดทระบในตวแปร srs ดวย 2 styles เลอก style ส าหรบแสดงผลท WMS เตรยมไวให (ถาไมระบจะใช default ท

ผใชบรการก าหนดไว) 3 format ฟอรแมทของภาพแผนททจะสงกลบมาใหผขอใชบรการ 4 request ชอของ operation ดงเชน GetMap, GetCapabilities เปนตน 5 layers ชอของชนขอมลแบบเรยงล าดบโดยมเครองหมาย “,” ขน 6 width ความกวางของภาพแผนท (หนวย: pixel) 7 height ความสงของภาพแผนท (หนวย: pixel) 8 srs ระบบพกด EPSG:4326 (ระบบพกดภมศาสตร)

3. GetFeatureInfo คอการรองขอระบบใหบรการแผนท เพอท าการคนคนขอมลแผนทดวยเงอนไขทาง ต าแหนง ซงสามารถขอผาน GetFeatureInfo ได ผใชสามารถระบพกด x, y ของจดอางองสมพทธ ทวไปเทยบกบภาพแผนท แมขายจะตอบกลบดวยขอมล Attribute ในรปแบบแบบ HTML GML หรอรปแบบ ASCII อยางงาย โดยมตวอยางโครงสรางของเอกสารการรองขอดงน ตารางท 3 ตารางอธบายพารามเตอรการรองขอ WMS GetFeatureInfo ล าดบ พารามเตอร ค าอธบาย

1 bbox คาพกดสองจดประกอบเปนภาพสเหลยมผนผา คอ พกดลางซาย (x,y) และ พกด บนขวา (x,y) ตามล าดบ ทงนตองสมพนธกบระบบพกดทระบในตวแปร srs ดวย

2 styles เลอก style ส าหรบแสดงผลท WMS เตรยมไวให (ถาไมระบจะใช default ทผใชบรการก าหนดไว)

3 format ฟอรแมทของภาพแผนททจะสงกลบมาใหผขอใชบรการ 4 info_format รปแบบของผลลพธ (default เปน text/plain) 5 request ชอของ operation ดงเชน GetMap, GetCapabilities เปนตน 6 layers ชอของชนขอมลแบบเรยงล าดบโดยมเครองหมาย “,” ขน 7 query_layers ชอชนขอมลทจะสบคน 8 width ความกวางของภาพแผนท (หนวย: pixel) 9 height ความสงของภาพแผนท (หนวย: pixel) 10 x ต าแหนงของพกดทจะสบคนในแนวแกน x (หนวย: pixel)

22

11 y ต าแหนงของพกดทจะสบคนในแนวแกน y (หนวย: pixel) 13.2 การใหบรการแผนทออนไลนในรปแบบแบบ WFS (Web Feature Service) Web Feature Service (WFS) เปนขอก าหนดมาตรฐานทใชในการเขาถงขอมลปรภมชนดเวกเตอร จากผใหบรการขอมล โดยผใชสามารถเขาถงขอมลดวยการดาวนโหลดขอมลภมสารสนเทศผานระบบอนเตอรเนตหรอสามารถเรยกมาวเคราะหเชงพนทได การท างานของ Web Feature Service สามารถแบงไดเปน 2 ประเภท ไดแก Basic WFS (การใชงานตดตอผาน http อยางงาย) และ Transaction WFS (การเรยกใชชนดเปนระเบยน หรอ WFS-T) (สรรเพชร ชอนธไพศาล, 2556) Basic WFS ประกอบดวย 3 Operation ดงน 1.GetCapabilities คอการตรวจสอบคณสมบต และความสามารถของแมขายเพอขอใชบรการแผนท รปแบบการตอบกลบทสามารถท างานได มกจะเรยกใชเปนค าสงแรกเพอสรางเปน User Interface ในกรณทผใชบรการตองการทราบขอมลเกยวกบคณสมบตของ WFS ทเปดใหบรการ ดงเชน มขอมลอะไรบาง มโอเปอเรชนท ใ ห เ ร ย ก ใ ช ง า น อ ะ ไ ร บ า ง น น ผ ใ ช บ ร ก า ร จ ะ ต อ ง เ ร ย ก ข อ ม ล เ ห ล า น ผ า น โอเปอเรชน WFS:GetCapabilities ซ งส งท WFS ส งกลบมาใหกบผ ขอใชบรการนน คอ ไฟลขอความ ทมโครงสรางเปน XML สวนใหญมกจะเรยกวา "เอกสาร WFS:GetCapabilities" ตามชอโอเปอเรชน หรอเรยกสน ๆ วา "เอกสาร Capabilities" ตารางท 4 ตารางอธบายพารามเตอรการรองขอ WFS GetCapabilities

ล าดบ พารามเตอร ค าอธบาย 1 ows:ServiceIndentification ขอมลเกยวกบตวบรการเอง ดงเชน ชอ, เวอรชน, ค าส าคญ

(keyword) เปนตน 2 ows:ServiceProvider ขอมลเกยวกบผใหบรการ ดงเชน ชอหนวยงาน, เบอรโทรศพท, ทอย

เปนตน 3 ows:OperationsMetadata ขอมลเกยวกบโอเปอเรชน (ฟงกชน) ทใหบรการ ดงเชน

GetCapabilities, GetFeature, DescribeFeatureType เปนตน 4 wfs:FeatureTypeList ขอมลเกยวกบ feature type และโอเปอเรชนของแต feature ท

ใหบรการ ดงเชน ชอ, ค าอธบาย, ระบบพกด, กรอบขอมล (Bounding box) เปนตน

5 wfs:ServesGMLObjectType แสดงขอมล GML Object ทสนบสนนและไมไดรางมาจาก gml:AbstractFeatureType ทใชรวมกบโอเปอเรชน GetGMLObject

6 ogc:Filter_Capabilities แสดงขอมลเกยวกบโอเปอเรชน หรอฟงกชนทสามารถใชในการสบคน หรอกรองขอมลทสนบสนนใน WFS น

23

2.DescribeFeatureType คอ การบรรยายโครงสรางของ feature ทจะใหบรการ เชน รายละเอยดข อ ง ข อ ม ล attribute ท ป ร ะ ก อ บ อ ย ด ว ย ก น เ ม อ ท ร า บ ว า WFS ท จ ะ ข อ ใ ช บ ร ก า ร ม ข อ ม ล ชออะไรอยบางแลว จากนนตองการทราบวาขอมลดงกลาวมโครงสรางอยางไรนน ผใชบรการสามารถรองขอขอมลเหลานไดผานโอเปอเรชน WFS:DescribeFeatureType ซงเอกสารทตอบกลบมาจะอธบายโครงสรางของขอมล ด ง เ ช น ช อ , ช น ด เ ป น ต น แ ล ะ เ พ อ ใ ห ก า ร พ ฒ น า Application ‘ส า ม า ร ถ เ ล อ ก ห ร อ ไ ม เ ล อ ก ขอมลอรรถาธบาย รวมทงเตรยมวธการแสดงผลทเหมาะสมได 3.GetFeature คอการเรยกดขอมลหรอการเขาถงขอมล feature อาจม เงอนไขการกรอง ของการ เล อกผ าน FilterEncoding เ ช น จ งหว ดท ข นต นด วย “จ งหว ด *” ผลลพธ ของข อม ลจะอย ในร ปแบบ GML ผ ใ ช บร การ WFS สามารถขอข อม ล เหล าน ไ ด ด ว ย โอ เปอ เรช น WFS:GetFeature ซ งบร การ WFS จะส งขอม ลกลบมาใหค าร องขอข อมล WFS:GetFeature โดยมต วอย า ง โครงสร า ง ของเอกสารการรองขอดงน 14. Dijkstra algorithm

หลกการค านวณทางคณตศาสตรของ Dijkstra (1959) ซง เปนการน าเอาทฤษฎกราฟ โดยใชเวอรเทกซ (Vertex) และเสน (Edge) แทนถนนทเชอมตอกน ก าหนดระยะทางระหวางจดเปนตวเลขลงไปในกราฟ โดย เรยกกราฟดงกลาววากราฟถวงนาหนก (Weighted Graph) คอกราฟทเสนเชอมทกเสนมคาน าหนกทมคาเปนจ านวนจรง ทไมตดลบ (พระวฒน แกลววการณ และสเพชร จรขจรกล, 2557) ส าหรบการค านวณหาเสนทางทสนทสด จาก จดเรมตน (start_vid) ไปยงจดสนสด (end_vid) ซง สามารถคานวณเสนทางไดทงแบบ directed graph และ undirected graph (pgRouting Contributors, 2013) ดง สตรดานลาง จากสตร G = (V,E) เมอ V(G) คอ เซตของเวอรเทกซ (Vertex) ในกราฟ E(G) คอ เซตของเสน (Edge) ในกราฟ

G = (V,E) when

V(G) = set of Vertex in graph E(G) = set of Edge in graph

V(x) = min{𝑉(𝑥),𝑊(𝑥) + 𝑑(𝑦)} d(y) = dist(v,y) | min { distance from node start to node y} W(x) = weight (i,j) | Distance from i to j : edge (i,j)

http://localhost/geoserver/wfs?request=GetFeature&version=1.0.0

&typeName=Workspacename:Layername&outputFormat=GML2

24

15. Web GIS Web GIS เปนระบบ GIS หนงทใชเทคโนโลยเวบเพอการสอสารระหวางองคประกอบ ตาง ๆ ในระบบ ซง

ประกอบดวยเครองมอทใชในการจดเกบ เรยกคน จดการ วเคราะหขอมลเชง พนทหรอขอมลภมศาสตร โดยแสดงผลผานระบบอนเตอรเนต ซงอยางนอยทสด Web GIS ตองม หนงลกขาย (a client ) และหนงเซรฟเวอร (a server) ทท างานบนระบบปฏบตการทเปน desktop app หรอ web browser app ทใหผใชสามารถสอสารผาน server และ server จะท าหนาทเปน Web server app ดวย Map Application เปนระบบ Web GIS ทผใชงานสามารถใชงานผานเวบเบราวเซอร เชน Internet explorer Mozilla หรอ Netscape โดยผใชไมจ าเปนตองตดตง ซอฟตแวรลงบนเครองคอมพวเตอร ตวอยาง Web Map Application ไดแก Google Map API Map Server ของCAT-GIFT (Government Information For Thailand) เปนตน ซงขอดของระบบ Web GIS แบบ Web Map Application คอสามารถท างานไดกบเครองคอมพวเตอรทก Platform และประหยดคาใชจายในการจดหาซอฟตแวร แตขอเสยคอในการใชงานตองเชอมตอกบ อนเตอรเนตตลอดเวลา

16. การจดการฐานขอมล (Database Management) การจดการฐานขอมล (Database Management) ฐานขอมล (Database) เปนศนยรวมของขอมลตาง

ๆ ทมความสมพนธกน โดยจะม กระบวนการจดหมวดหมขอมลอยางมระเบยบแบบแผน กอใหเกดฐานขอมลทเปนแหลงรวมขอมล จากแผนกตาง ๆ ทถกน ามาจดเกบรวมกนไวภายใตฐานขอมลเพยงชดเดยว ระบบฐานขอมล (Database System) เปนระบบทรวบรวมกลมของขอมลทม ความสมพนธซงกนและกนไวดวยกนและสามารถเรยกใชความสมพนธนน ๆ ไดอยางมระบบ ใน ระบบฐานขอมลประกอบดวยแฟมขอมลหลายแฟมทม ขอมลเกยวของสมพนธกนเขาไวดวยกน อยางเปนระบบและเปดโอกาสผใชสามารถใชงานและดแลรกษาปองกนขอมลเหลานไดอยางม ประสทธภาพ โดยมซอฟตแวรทเปรยบเสมอนสอกลางระหวางผใชและโปรแกรมตางๆ ทเกยวของ กบการใชฐานขอมล ซงเรยกวา ระบบจดการฐานขอมล หรอ DBMS (Database Management System) ซงมหนาทชวยใหผใชเขาถงขอมลไดงายสะดวกและมประสทธภาพ ทงนผใชสามารถ โตตอบกบฐานขอมลไดโดยผานชดค าสง SQLหรอน าชดคาสง SQL ไปผนวกลงในโปรแกรม ประยกตเพอใชงานรวมกบโปรแกรมทเขยนขนกไดเชน ไดเขยนโคดโปรแกรมดวยภาษา Visual Basic หรอ PHP ซงภายในโปรแกรมมโมดลประมวลผลตาง ๆ พรอมกบโมดลทใชโตตอบกบ ฐานขอมลดวยชดค าสงภาษา SQL (สทธชย ชส าโรง, 2559, หนา 11-13)

25

16.1 รปแบบของระบบฐานขอมลแบงเปน 3 ประเภท คอ 1) ฐานขอมลเชงสมพนธ (Relational Database) เปนการเกบขอมลใน รปแบบทเปนตาราง (Table) หรอเรยกวา รเลชน (Relation) มลกษณะเปน 2 มต คอเปนแถวและ เปนคอลมน การเชอมโยงขอมลระหวางตารางจะเชอมโยงโดยใชแอททรบวต (Attribute) หรอ คอลมนทเหมอนกนทงสองตารางเปนตวเชอมโยงขอมล 2) ฐานขอมลแบบล าดบชน (Hierarchical Database) เปน โครงสรางท จดเกบขอมลในลกษณะความสมพนธแบบพอ ลก หรอเปนโครงสรางรปแบบ ตนไม Tree ขอมล ทจดเกบในทน คอ ระเบยน (Record) ซงประกอบดวยคาของเขตขอมล Field ของ เอนทตหนงๆ 3) ฐานขอมลแบบเครอขาย (Network Database) เปนการรวมระเบยน ตาง ๆ และความสมพนธระหวางระเบยนแตจะตางกบฐานขอมลเชงสมพนธคอ ในฐานขอมลเชง สมพนธจะแฝงความสมพนธเอาไว โดยระเบยนทมความสมพนธกน จะตองมคาของขอมลในแอท ทรบวตหนงทเหมอนกนแตฐานขอมลแบบเครอขาย จะแสดงความสมพนธ อยางชดเจน

16.2 ความสมพนธ ความสมพนธ (relationship) เปนการอธบายความสมพนธระหวางเอนทตทม ความความสมพนธกน วาม

ความสมพนธกนอยางไร โดยในอ-อารไดอะแกรมใชสญลกษณภาพสเหลยมขาวหลามตดทมชอของความสมพนธนนก ากบอยภายใน และเชอมตอกบเอนทตท เกยวของกบความสมพนธดวยเสนตรง 1) ความสมพนธแบบหนงตอหนง (one to one relationship หรอ 1:1) คอขอมลในเอนทตหนง ทมความสมพนธกบขอมลในอกหนงเอนทตเพยงขอมลเดยว ตวอยางเชน นกศกษาแตละคนจะมสตบตรไดเพยงใบเดยวเทานน และสตบตรหนงใบกเปนของนกศกษาได เพยงคนเดยวเทานนเชนกน 2) ความสมพนธแบบหนงตอกลม (one to many relationship หรอ 1:M) หมายถง ขอมลในเอนทตหนง มความสมพนธกบขอมลในอกหนงเอนทตมากกวาหนงขอมล ตวอยางเชน ลกคาหนงคนมใบเสรจไดหลายใบ เนองจากลกคาหนงคนอาจมาซอสนคาหลายครง แตใบเสรจหนงใบตองเปนของลกคาเพยงคนเดยวเทานน 3) ความสมพนธแบบกลมตอกลม (many to many relationship หรอ M:M) หมายถง ขอมลมากกวาหนงขอมลในเอนทตหนง มความสมพนธกบขอมลในอกหนงเอนทต มากกวาหนงขอมล ตวอยางเชน นกศกษาหนงคนสามารถลงทะเบยนเรยนไดหลายวชา และวชาแตละวชามนกศกษาลงทะเบยนเรยนไดหลายคน(สทธชย ชส าโรง, 2559, หนา 11-13)

2.2 เอกสารงานวจยทเกยวของ ดวงใจ ค าคง 2554 ไดท าการเกบขอมลผสงอาย โดยแบงเปนกลมตวอยางทางสถต จากประชากรทง

ต าบล โดยไดท าการออกแบบสอบถามเกยวกบสถานภาพตางๆของผสงอาย เชน เพศ สถานภาพการสมรส โรค

26

ประจ าตว รายไดและหนสนและใหท าแบบสอบถามคณภาพชวตขององคการอนามยโลก สรปไดวาสถานภาพสมรสมความส าคญมาก โดยไดสรปไดวา มคสมรสจะมทศทางไปทางบวก

พมพสทธ บวแกว และ รตพร ถงฝง 2559 การวจยในครงนเปนการวจยเชงส ารวจ โดยใชขอมล ทตยภมจากการส ารวจประชากรผสงอาย ประจ าป พ.ศ. 2554 ของส านกงานสถตแหงชาต โดยส านกงานสถตไดใช วธการสมตวอยางแบบ Stratified Two Stage Sampling โดยมจงหวดเปนสตราตรม ทงหมด 76 สตราตรม และแบง เปน 2 สตราตรมยอยตามลกษณะการปกครอง คอในเขต เทศบาล (เมอง) และนอกเขตเทศบาล(ชนบท) ส าหรบกลมตวอยางในการวจยในครงนคอผสงอาย16,058 คน จากทงหมด 204,905 คนโดยในจ านวนนไดเลอกเฉพาะผสงอายทตอบแบบสอบถามครบถวน การทดสอบสมมตฐานไดใชการวเคราะหถดถอยพหคณ เพอวเคราะหหาความสมพนธระหวางตวแปรอสระและตวแปรตาม โดยไดท าการตรวจสอบขอตกลงเบองตนของการใชสถตเปนทเรยบรอยจากผลการศกษาพบวารายไดเปนตวก าหนดทบคคลนนๆจะมสขภาพดหรอไมโดยสรปไดวารายไดมากสขภาพยอมดขนในทางกลบกนหากมรายไดต ากสงผลใหมสขภาพแยยงเหนไดชดเมอเปรยบเทยบคนจนกบคนรวย

วไลพร ข าวงษ จตพร หนสวสด วรารตนประทานวรปญญา จดาภา ศรปญญา 2554 การวจยครงนเปนวจยเชงพรรณนา (descriptive research) เพอศกษาคณภาพชวตและความสมพนธระหวาง ปจจยสวนบคคลกบคณภาพชวตของผสงอายในต าบลบางกราง อ าเภอเมอง จงหวดนนทบรกลมตวอยาง คอ ผสงอายท ยนดตอบแบบสอบถามการวจยและเขารวมโครงการบรการวชาการ จ านวน 345 คน เครองมอทใชในการวจยประกอบ ดวย แบบบนทกขอมลสวนบคคล แบบสอบถามความสามารถในการท ากจวตรประจ าวนและแบบวดคณภาพชวตของ องคการอนามยโลก ชดยอ ฉบบภาษาไทย (WHOQOl_BREF_THAI) เกบรวบรวมขอมลโดยใหกลมตวอยางตอบ แบบสอบถามในชวงของการลงทะเบยนและกจกรรมการคดกรองสขภาพเบองตน กอนทจะใหความรและค าปรกษาในการ ดแลสขภาพในโครงการบรการวชาการ วเคราะหขอมลสวนบคคลและความสามารถในการท ากจวตรประจ าวนโดยใชสถต เชงพรรณนา ในสวนของขอมลคณภาพชวตใชสถตเชงพรรณนา Chi-square และ Spearman rank correlation coefficient ผลการศกษาพบวา กลมตวอยางมคะแนนคณภาพชวตโดยรวมอยในระดบปานกลาง คดเปนรอยละ 66.1 เมอ พจารณารายดานพบวา ทกองคประกอบมคะแนนคณภาพชวตอยในระดบปานกลาง โดยดานรางกายคดเปนรอยละ 75.7 ดานจตใจรอยละ 53.7 ดานสมพนธภาพทางสงคมรอยละ 66.0 และดานสงแวดลอมรอยละ 62.6 ตามล าดบ และพบวา ปจจยดานเพศ อาย สถานภาพสมรส ระดบการศกษา รายไดและฐานะการเงนมความสมพนธอยางมนยส าคญทางสถต กบคณภาพชวตของผสงอาย

วชพลประสทธ กอนแกว 2557 การวจยเรอง พฤตกรรมสขภาพของผสงอายมวตถประสงคเพอศกษาระดบพฤตกรรมสขภาพของผสงอายและเปรยบเทยบ พฤตกรรมสขภาพโดยรวม ผลการศกษาพบวาอายระหวาง 60-69 ปมากกวาครงมสถานภาพสมรส มการศกษาระดบประถมศกษา มากกวาครงมรายไดไมเกน 5,000 บาทตอเดอน มรายไดนอยกวารายจาย มแหลงทมาของรายไดสวนใหญ ไดรบจากสวสดการ จากรฐ มภาวะสขภาพอยในเกณฑปานกลาง มสดสวนผมโรคประจ าตวและไมมโรคประจ าตว ใกลเคยงกน โดย พบวา ผสงอายมพฤตกรรม

27

สขภาพโดยภาพรวมอยในระดบปานกลาง เมอพจารณารายละเอยดในแตละดาน พบวาผสงอายมพฤตกรรมสขภาพอยในระดบปานกลางทกดาน โดยมพฤตกรรมดานการรบประทานอาหารเปนพฤตกรรมดทสด รองลงมาคอการปฏบตตน ในภาวะเจบปวยการจดการความเครยด และมพฤตกรรมการออกก าลงกายแยทสดและเมอ เปรยบเทยบพฤตกรรมสขภาพโดยรวมของผสงอายจ าแนกตามขอมลสวนบคคล พบวา ผสงอายทม อาย สถานภาพสมรส รายได ความพอเพยงของรายไดและภาวการณมโรคประจ าตวแตกตางกน มพฤตกรรมสขภาพโดยรวมไมแตกตางกน สวนผสงอายทมเพศระดบการศกษาแหลงทมาของ รายไดสวนใหญแตกตางกน มพฤตกรรมสขภาพโดยรวมแตกตางกนอยางมนยส าคญทางสถต ทระดบ .05

Maria Antonia Brovelli Marco Minghini Giorgio Zamboni 2559 การส ง เสรม เทคโนโลยความกาวหนาทางเทคโนโลยการเกบขอมลและเผยแพรขอมลทางภมศาสตรใหเปนเรองธรรมดาส าหรบบคคลทวไปแอปพลเคชนนแสดงใหเหนความหลากหลายมากขนของขอมลเชงภมศาสตรโดยท าใหผใชรวบรวมขอมลและวเคราะหปฏสมพนธกบขอมลเชงพนทและอธบายการวางแผนเมองการใหความส าคญกบขอมลการทองเทยวโดยใหผใชชวยกนรวบรวมขอมลทางภมศาสตรโดยขอมลจะถกเผยแพรทางหนาเวบโดยผดแลเวบทดแลเพอการวเคราะหขอมลเชงลก

Chingchai Humhong et al. ปจจบนการสบคนขอมลเพอขอสทธหอพกบคลากรในมหาวทยาลยแบบเดมนนเปนแบบแผนทกระดาษและตารางซงมความซบซอน ไมสะดวกและใชเวลาคอนขางมากในการสบคนและจดการขอมล การศกษาครงนไดพฒนาระบบสนบสนนการตดสนใจเชงพนทสา หรบการพจารณาจดสรรผเขาพกอาศยในหอพกบคลากรของมหาวทยาลยนเรศวร ในรปแบบเวบแผนทออนไลนผานเครอขายอนเตอรเนต และสามารถวเคราะหต าแหนงหมบานของผใชบรการทสามารถขอหอพกและไมสามารถขอหอพกของมหาวทยาลยนเรศวร ไดเปรยบเทยบการวเคราะห 2 วธการคอ 1) วเคราะหแบบรศม 25 กโลเมตร โดยใชฟงกชน ST_Buffer และ 2) ว เคราะหแบบพนท ใหบรการซ งคานวณจากระยะทางสญ จร 25 ก โล เมตร โดยใช ฟงกชน pgr_drivingDistance และ pgr_alphaShape ผลการศกษาครงนพบวาระบบทพฒนาขนสามารถน าไปใชสนบสนนงานบรการสวสดการหอพกบคลากรได เมอทราบต าแหนงหมบานของผใชบรการ และทราบพนทใหบรการในรศม 25 กโลเมตร ท าใหสามารถวเคราะหสทธการขอหอพกบคลากรได

Rohit Chaudhri et al. บทความนน าเสนอเซนเซอร ODK กรอบทออกแบบมาเพอลดความซบซอน

ของกระบวนการของการรวมเซนเซอร เปนงานเกบรวบรวมขอมลมอถอส าหรบทงโปรแกรมเมอร และขอมล นกสะสม แพลตฟอรมโทรศพทมอถอในปจจบน (เชนสมารทโฟนแทบเลต) สามารถเชอมตอกบเซนเซอรภายนอกแบบตางๆผานสาย (USB) และ ไรสาย (Bluetooth) แตทเหมาะสม การด าเนนการอาจเปนภาระหนก การประยกตใชตองสนบสนนความหลากหลายของเซนเซอรทมแตกตางกน ชองทางการสอสารและรปแบบขอมล เปาหมายของเราคอการให กรอบระดบสงทสามารถปรบแตงไดและ ความยดหยนในการใชงานทเชอมตอกบเซนเซอรภายนอก

28

และ จงสนบสนนความหลากหลายของบรการขอมลทพงพา sensordata เราใชสตวอยางเพอเนนชวง รปแบบการใชงานและความสะดวกในการใชงานพฒนา

Waylon Brunette et al. Open Data Kit (ODK) เปนชดเครองมอแบบแยกสวนแบบโอเพนซอรสท

ชวยใหองคกรสามารถสรางขอมลเฉพาะแอพพลเคชนได บรการส าหรบใชในสภาพแวดลอมทมขอ จ ากด ดานทรพยากร ODK คอ หนงในโซลชนการรวบรวมขอมลชนน าทมอยและไดรบ น าไปใชโดยหลากหลายขององคกรในหลายประเทศ รอบโลก. บทความนกลาวถงความคดเหนลาสดจาก ผใชและนกพฒนาท าใหเราตองออกแบบระบบ ODK ใหม สถาปตยกรรม. โดยเฉพาะหลกการออกแบบส าหรบการเนน ODK 2.0 1) ปรบแตงไดงายขนส าหรบบคคลทมขอ จ ากด ประสบการณการเขยนโปรแกรม 2) การใชโครงสรางขอมลพนฐานเปน แถวเดยวภายในตารางขอมล 3) การจดเกบขอมลในฐานขอมลทสามารถเขาถงไดในแอพพลเคชนและอปกรณไคลเอนต 4) เพ มความหลากหลายของประเภทการปอนขอมลดวยการเปดใชงานขอมลใหม วธการปอนขอมลจากเซนเซอร เราพดถงหลกการเหลานอยางไร ไดน าไปสการปรบแตงเครองมอ ODK ทมอยและ การสรางเครองมอใหม ๆ ทมงปรบปรงชดเครองมอ, ขยายชวงของการใชงานและท าใหปรบแตงไดมากขน โดยผใช

Carl Hartung et al. บทความนน าเสนอ Open Data Kit (ODK) ซงเปนชดเครองมอแบบโอเพนซอร

สแบบขยายไดซงออกแบบมาเพอสรางบรการขอมลส าหรบภมภาคทก าลงพฒนา ขณะน ODK มเครองมอ 4 ประเภทในตอนทายน ไดแก รวบรวมรวมเสยงและสงปลกสราง Collect คอแพลตฟอรมโทรศพทมอถอทแสดงผลตรรกะแอพพลเคชนและสนบสนนการจดการขอมล aggregate มเซรฟเวอร "คลกเพอปรบใช" ทสนบสนนการจดเกบและถายโอนขอมลใน "cloud" หรอบนเซรฟเวอรภายในเครอง Voice ท าใหแอพพลเคชนลอจกใชโทรศพท แจงใหผใชตอบสนองดวยการกดแปนพมพ สดทาย Build เปนโปรแกรมออกแบบทสรางตรรกะทใชโดยเครองมอ ออกแบบมาเพอใชรวมกนหรอเปนอสระเครองมอหลกของ ODK สรางขนจากมาตรฐานแบบเปดทมอยและไดรบการสนบสนนโดยชมชนโอเพนซอรสทมสวนรวมในเครองมอเพมเตม เราอธบายสการใชงานทแสดงใหเหนถงวธการตดสนใจในสถาปตยกรรมระบบของ ODK เปดใชงานบรการทสามารถผลกดนและดงขอมลในภมภาคก าลงพฒนา

Kumari Pritee,Garg R.D การท าแผนทเสนทางหลายอยางท าไดดวยความชวยเหลอของ API ของแผนท Google แตไมไดใหฟงกชนการก าหนดเสนทางทางภมศาสตรเชนการวางซอนการแกไข ฯลฯ โครงการนมเปาหมายเพอคนหาเสนทางทสนทสดระหวางจดสองจดขนไปโดยใชอลกอรทม Dijkstra multipath ผาน PgRouting อลกอรทมของ Dijkstra มขอดตรงเวลาทจ าเปนส าหรบการเลอกเครอขายและการสรางกราฟเหนอความเรวของอลกอรทม ในกรณน A-star เปนทตองการมากกวาอลกอรทมของ Dijkstra อลกอรทมของ Dijkstra มความซบซอนของการค านวณ O (n2) กบเครอขายประกอบดวย n nodes โครงการนอธบายถงขนตอนในการเตรยมขอมลโดยการแปลงไฟลภาพรางเปนไฟล SQL และน าเขาลงใน PostgreSQL / PostGIS ก าหนดเสนทางโทโพโลยดชนและแบบสอบถามก าหนดคาใชจายโดย PgRouting แบบไดนามกและเขยนฟงกชน 'plpgsql' ทก าหนดเองโดยใช PL / pgSQL (ขนตอนการเขยนโปรแกรมแบบสอบถามโครงสรางภาษา) ทสนบสนนโดย PostgreSQL รายงานนแสดงฟงกชนทางภมศาสตรทงหมดทมการสนบสนนแบบไดนามกผานทาง PgRouting ซง

29

จะชวยใหลกคาจ านวนมากเชน Quantum GIS และ Udig แสดงถงลกคาการสรางภาพส าหรบการปรบเปลยนขอมลและแอตทรบวตเ พอสะทอนการเปลยนแปลงโดยทนทผาน PgRouting PgRouting ใหกรอบโดยทพารามเตอรคาใชจายถกค านวณแบบไดนามก เอกสารฉบบนระบเสนทางของถนนในเมองพารา ณ สโดยใชอลกอรทม Dijkstra และ PgRouting บทความนมงเนนไปทการก าหนดเสนทางแบบไดนามกบนเครอขายทซบซอนเชนเมองพารา ณ สผานแอพพลเคชนการท าแผนทเวบเพอใหลกคาสามารถหาเสนทางทสนทสดของพวกเขาพรอมกบพารามเตอรคาใชจาย

บทท 3

วธด าเนนงานวจย

ในการศกษางานวจยเรองการพฒนาระบบคนหาเสนทางทใกลทสดเพอน าผสงอายไปสถานบรหารดานสขภาพและการกระจายตวของโรคบนระบบแผนทออนไลนดวยซอฟตแวรรหสเปดนมเครองมอและรายละเอยดขนตอนการด าเนนการดงตอไปน

3.1. เกบต าแหนงพรอมขอมลผสงอายโดยลงพนทส ารวจพรอมกบหนวยงาน 3.2. เครองมอทใชในการวจย

1. ขอมลทใชในการศกษาเปนขอมล เปนขอมลทไดจากการส ารวจแบบสอบถามในแอปพลเคชน ODK ทออกแบบในเวบ ODK Build

2. อปกรณและซอรฟแวร เปนเครองมอทใชสาหรบการจดทาระบบฐานขอมลและพฒนาเวบไซตดงน

เครองมอทใชภาคสนาม โทรศพท Android ดานโปรแกรมซอฟตแวร ระบบปฏบตการ Linux ubuntu บน OSGeolive 10.0 พรอมท าโปรแกรมรหสเปด Web server : Openlayers1 , PostgreSQL/PostGIS2 , pgAdmin III3 , Geoserver4 , ODK Collect5 เปนตน

3.3. ปจจยทใชในการวเคราะห 1. ใชระบบการหาเสนทาง pg routing หาเสนทางทใกลทสดในการรกษาเมอเกดเหตฉกเฉน 2. หาการกระจายตวของโรคปจจยทใชในการวเคราะหเปนปจจยทใชในการวเคราะหเพอคนหาการกระจาย

ตวของโรคขอมลสวนตวผสงอาย โดยการศกษาครงนจะเลอก ปจจยทเกยวของกบการ ไดแก เสนทางระหวางทพกผสงอายกบหนวยงานสขภาพ,การกระจายตวของโรค,การใหบรการภาคสนาม

1

https://openlayers.org/

2 https://www.postgresql.org/

3 https://www.pgadmin.org/

4 http://geoserver.org/

5 https://docs.opendatakit.org/collect-intro/

32

3.4. วธการด าเนนการวจย 3.4.1 ตดตงระบบ ODK Aggregate (วธการตดตงแบบละเอยดแสดงไวทภาคผนวก ค) และ หนาเวบฐานขอมล

ภาพท 5 หนาเวบฐานขอมล phppgaadmin

ภาพท 6 หนาเวบ Aggregate

33

3.4.2 ออกแบบแบบสอบถาม ลงพนทไปท ต.คอรม อ.พชย จ.อตรดษถ เพอหารอในการออกแบบสอบถามตามทหนวยงานสขภาพ

ตองการซงผวจยไดพนทสรางแบบสอบถามใหตามทหนวยงานตองการโดยใชเกณฑ ของ ICF และพจารณารวมกบหนวยงานสขภาพในต าบล

ภาพท 7 ตวอยางการสรางแบบสอบถาม

3.4.3 การส ารวจภาคสนามเพอจดเกบขอมลในพนทจรง เปนการด าเนนการส ารวจขอมลประเภทจดหรอต าแหนงทางพนท โดยเกบขอมลพกดแหนงของบาน

ผสงอายดวยแอปพเคชน ODK Collect เพอน ามาวเคราะหในการคนหาเสนทางทใกลทสดในการไปโรงพยาบาล

ภาพท 8 ตวอยางแบบฟอรมทใชในการส ารวจขอมลผสงอายในภาคสนาม

34

3.4.4 น าเขาขอมลเขาสโปรแกรม QGIS โดยน าขอมลมาจากไฟล CSV โดยดาวนโหลดมาจากหนาเวบ Aggregate โดยจะแสดงขอมลทงหมดทไดเกบในแบบสอบถามจากแอพพลเคชน ODK Collect

ภาพท 9 ไฟล CSV จากเวบ Aggregate

ภาพท 10 จดจากไฟล CSV ทเปดดวยโปรแกรม QGIS

35

3.4.5 Entity Relationship Diagram (ER-Diagram)

ภาพท 11 ER-Diagram

3.4.6 ใสระบบคนหาเสนทาง PgRouting งานวจยในครงน ไดพฒนาตอยอดจาก อลกอรทมของไดกสตรา (Dijkstra's algorithm) ทเปนหลกการค านวณทางคณตศาสตรของ Dijkstra (E.W. Dijkstra, 1959) ซงเปนการน าเอาทฤษฎกราฟ โดยใชเวอรเทกซ (Vertex) และเสน (Edge) แทนถนนทเชอมตอกน ก าหนดระยะทางระหวางจดเปนตวเลขลงไปในกราฟ โดยเรยกกราฟดงกลาววากราฟถวงน าหนก (Weighted Graph) คอกราฟทเสนเชอมทกเสนมคาน าหนกทมคาเปนจ านวนจรงทไมตดลบ (พระวฒน และสเพชร จรขจรกล, 2557) ส าหรบการค านวณหาเสนทางทสนทสด จากจดเรมตน (start_vid) ไปยงจดสนสด (end_vid) ซงสามารถค านวณเสนทางไดทงแบบ directed graph และ undirected graph (pgRouting Contributors, 2013) ดงสตรดานลาง G = (V,E)

when

V(G) = set of Vertex in graph E(G) = set of Edge in graph

V(x) = min{𝑉(𝑥),𝑊(𝑥) + 𝑑(𝑦)} d(y) = dist(v,y) | min { distance from node start to node y} W(x) = weight (i,j) | Distance from i to j : edge (i,j)

3.4.6.1 การเตรยมขอมลเพอใสระบบ pgrouting

โหลดขอมลถนนจาก เวบ Open Street Map

36

ภาพท 12 หนาเวบ Open Steet Map

พมพค าสง cd โฟลเดอรทเกบไฟล .osm osm2pgrouting \ -f ชอไฟลเรา.osm \ -d ชอฐานขอมล \ -U user ใสหนาตาง Terminal ใน ubuntu เพอรนค าสง Pgrouting

ภาพท 13 Layer Node ถนนในโปรแกรม QGIS

37

ภาพท 14 ค าสงแสดงเสนทางใน QGIS

ภาพท 15 ตวอยางคนหาเสนทางใน QGIS

..

38

3.4.7 การท าแผนทบนหนาเวบ 3.4.7.1 ออกแบบหนาเวบ

ภาพท 16 หนาเวบ

- ใสหนา Login เพอดแผนทและสามารถแกไขขอมลและหนาส าหรบผเยยมชมทสามารถการแสดงจดบนแผนทไดแตไมสามารถแกไขได

ภาพท 17 หนาส าหรบลอคอน

39

ภาพท 18 หนาเมอลอคอนเขาสระบบส าเรจ

ภาพท 19 หนาส าหรบผเขาชมทวไป

40

4.7.2 หนาส าหรบการน าทางจากบานผสงอายไปยงโรงพยาบาลหรอสถานสขภาพทใกลทสด

ภาพท 20 หนาระบบการน าทาง

4.7.3 หนาขอมลสวนตวของผพฒนาระบบ

ภาพท 21 หนาขอมลสวนตวของผพฒนาระบบ

บทท 4

ผลการวจย

การด าเนนงานวจยชนนเปนการศกษาหาวธลดงานผส ารวจโดยการสรางแบบหอรมทงายและน าผลส ารวจทไดจากต าบล คอรม อ าเภอพชย จ.อตรดษถ โดยใชแอปพลเคชน Open data kit ในการวเคราะหเสนทางทใกลทสดจากบานผสงอายโดยใชpg routing หาเสนทางทใกลทสดจากบานผสงอายไปยงโรงพยาบาลแลสถานพยาบาล เพอเปนแนวทางในการปองกนและการชวยเหลอผสงอายในต าบลคอรม อ าเภอพชย จงหวดพษณโลก

4.1. ผลจากการหาเสนทางทใกลทสดและการกระจายตวของโรค การคนหาหนวยงานสขภาพจะท างานบนหนาจอแสดงผลโดยผานเวบบราวเซอรเมอผใชงานทราบ

ต าแหนงของจดเกดเหตฉกเฉนแลวใหผใชงานก าหนดต าแหนงลงบนแผนท และคลกจดหนวยงานสขภาพ ระบบจะท าการคนหาเสนทางทใกลทสดจากจดเกดเหตฉกเฉนกบผสงอายและหนวยงานสขภาพ โดยเสนทางกลบมาทหนาจอแสดงผล

ภาพท 22 ผลการทดลองผานหนาเวบพรอมกบจดบานผสงอายพรอมจดหนวยบรการดานสขภาพ

44

ภาพท 23 ผลการทดลองผานหนาเวบพรอมกบจดบานผสงอายพรอมจดหนวยบรการดานสขภาพพรอมเสนทางทใกลทสดจากบานผสงอายไปยงโรงพยาบาล

ภาพท 24 การกระจายตวของผมโรคประจ าตวพรอมเสนทางทใกลทสดกบโรงพยาบาลผานโปรแกรม QGIS

45

ภาพท 25 การกระจายตวของผพการพรอมเสนทางทใกลทสดกบโรงพยาบาล

4.2. ผลจากการออกแบบฟอรมทใชเวบ ODK Build

ภาพท 26 หนาเวบออกแบบฟอรม

46

โดยแบบฟอรมทสรางมาไดนนสามารถสรางไดงายและพบวาเมอน าไปออกภาคสนามในการเกบขอมลมความสะดวกในการการเกบขอมลโดยไมตองพกเครองมอเกบพกดและสามารถเกบภาพถาย,คลปวดโอ,เสยงการสมภาษณ

ภาพท 27 ตวอยางแบบฟอรมทใชในการส ารวจขอมลผสงอายในภาคสนาม

47

โดยขอมลทสงจะสงโดยตรงไปทเซอรเวอรโดยตรงผานตว ODK collect > ODK aggregate ซงขอมลทสงไปนนจะโชวผานหนาเวบ Aggregate ซงขอมลทโชวดงมาจาก server ทใชในการเกบขอมล

ภาพท 28 หนาเวบ Aggregate ทใชในการดขอมล

ภาพท 29 หนาเวบ Phppgadmin ทใชในการเกบขอมลท ODK Aggregate ใชโหลดขอมล

บทท 5

บทสรป

การพฒนาระบบฐานขอมลผสงอาย โดยใชแอพพเคชน Open data kit จากการวเคราะหและการออกแบบกระบวนการการ ท างานของโปรแกรมไดด าเนนการตามโครงสรางทวางเอาไวโดยผจดท าไดพฒนาโปรแกรมนเพอพฒนาแบบฟอรมในการเกบขอมลภาคสนามทมความหยดยนในการสรางแบบฟอรมขนมาเองของหนวยงานและหนวยงานยงสามารถใชขอมลภาคสนามทเกบมาไดมาวเคราะหผานแผนทออนไลนเพอวเคราะหการกระจายของโรคพรอมสามารถสบคนแกไขขอมลไดจากหนาเวบ

5.1 สรปผลการทดลอง การวเคราะหและการจดท าฐานขอมลผสงอายฃมวตถประสงคเพอวเคราะหและจดท าฐานขอมลเพอ

คนหาระยะทางทใกลทสดเพอเดนทางไปยงหนวยงานสขภาพทอยใกลเคยง จากบานผสงอาย

งานวจยนจงเปนการจดท าการพฒนาระบบเพอคนหาเสนทางทใกลทสดแสดงแผนทออนไลนและซงจะชวยใหสามารถท าใหลดงานทงผส ารวจละผดแลระบบของหนวยงานโดยการเกบขอมลดวย ODK Collect สามารถสงขอมลโดยตรงไปยงฐานขอมลพรอมทงผส ารวจไมตองกรอกขอมลจากกระดาษเขาโปรแกรม Excel อก เพราะสามารถดาวโหลดขอมลจาก ODK Aggregate ไดเลย พรอมทงผดแลระบบของหนวยงานสามารถดงขอมลจากฐานขอมลออกมาวเคราะหไดตอเลย

ODK Aggregate เปนแอพพลเคชน Java แบบโอเพนซอรสทจดเกบวเคราะหและน าเสนอขอมลการส ารวจของ XForm ทเกบรวบรวมโดยใช ODK Collect หรอแอพพลเคชนทสามารถใชงานรวมกบ OpenRosa ได สนบสนนประเภทขอมลหลากหลายประเภทและไดรบการออกแบบมาเพอใหท างานไดดในทกสภาพแวดลอมการโฮสตการรวบรวมขอมลสามารถท าไดโดยโฮสต XForms วางท ODK Collect หรอลกคา OpenRosa อน ๆจดเกบและจดการขอมลการสงแบบ XFormแสดงภาพขอมลทเกบรวบรวมโดยใชแผนทและกราฟแบบงายๆสงออกและเผยแพรขอมลในรปแบบตางๆ รวมสามารถโฮสตบน Google App Engine, Amazon Web Services หรอเซรฟเวอรทองถนหรอคลาวดของคณ นอกจากนยงมภาพเครองเสมอนทก าหนดคาไวลวงหนาซงพรอมใชงานบนคอมพวเตอรเครองใดกได

pgRouting สามารถพฒนาระบบคนหาเสนทางไดอยางมประสทธภาพ ขนอยกบวตถประสงคของผใชงานและผพฒนาระบบ โดยสามารถพฒนาใหท างานไดไมตางกบชดค าสงในโปรแกรมบางโปรแกรมเชน ค าสงการคนหาระยะทางทใกลทสดในโปรแกรม ArcGIS นอกจาก pgRouting สามารถค านวนหาระยะทางทสนทสด

50

opensource เปนโปรแกรมทเปดใหผใชสามารถพฒนาตอยอดเองได มนกพฒนาโปรแกรมจ านวนมากทวโลก จงท าใหโปรแกรมมประสทธภาพสง และ ท าใหสามารถแกไข ดดแปลง source code ไดหมด ซงเปนการใหสทธเสรแกผทจะน าไปใชเพอการพฒนาซอฟตแวร

web gis เปนระบบ GIS หนงทใชเทคโนโลยเวบเพอการสอสารระหวางองคประกอบตางๆในระบบ ทใชในการจดเกบ เรยกคน จดการ วเคราะหขอมลเชงซงเราสามารถจดการไดดวยตนเอง

ระบบนสามารถชวยใหหนวยงานสขภาพในการตดสนใจในการเลอกเสนทางทใกลทสดเพอไปหนวยงานสขภาพในการรกษา ผานระบบเครอขายอนเตอรเนตจากสมารทโฟน ผลและวจารณการทดลอง

การคนหาหนวยงานสขภาพจะท างานบนหนาจอแสดงผลโดยผานเวบบราวเซอรเมอผใชงานทราบต าแหนงของจดเกดเหตฉกเฉนแลวใหผใชงานก าหนดต าแหนงลงบนแผนทเพอสงต าแหนงจดเกดเหตฉกเฉนเขาสฐานขอมล ระบบจะท าการคนหาหนวยงานสขภาพทงหมดทใกลทสดจากจดเกดเหตฉกเฉนกบผสงอายและเลอกหนวยงานสขภาพทอยใกลจดเกดเหตมาทงหมดทอยในระยะทก าหนดไวและสงต าแหนงทงหมดกลบมาทระบบ ระบบจะเลอกต าแหนงโรงพยาบาลทอยใกลจดเกดเหตมากทสดมา 1 หนวยงานสขภาพตามระยะทาง และแสดงเสนทางกลบมาทหนาจอแสดงผล

Maria Antonia Brovelli et el. (2017) ไดท าการวจยจากการใช ODK มาใชเพอแสดงการใช ODK ในการพฒนาการมสวนรวมกบสาธารณะโดยเกบขอมลโดยใหผใชทวไปมสวนรวม เชน การเกบทางส าหรบคนพการ โดยแสดงผานหนาเวบผานเซอเวอรดวย leaflet

จากงานวจยขางตนไดท าการออกแบบเวบไซตส าหรบการใชฟงกชน pgRouting เพมเขามาเพอสนบสนนการเดนทางโดยสามารถน าทางไปเสนทางไปบานผสงอายไดจากหนวยงานสขภาพโดยไมไดมแคการ ต าแหนงของ marker ทแสดงบนเวบไซต โดยวเคราะหการกระจายตวของโรคประจ าตวดวย แผนท heatmap

5.2 ปญหาและอปสรรค การลงพนทส ารวจและนดเจอกบเจาหนาททเกยวของท าไดยากเนองจากเวลาไมตรงกนท าใหการนดหมาย

ตองท าการนดลวงหนาเปนเวลานาน

5.3 ขอเสนอแนะ

ควรมเครองแมขายเปนของตนเองทสามารถรองรบขอมลส ารวจไดและควรผใชเขาใจตวโปรแกรมมากยงขนโดยการสอนพรอมทงใหความรหนวยงานสขภาพในการจดท าแผนทการกระจายตวของโรค

บรรณานกรม

53

บรรณานกรม

ดวงใจ ค ำคง (2554). ปจจยทมผลตอคณภำพชวต. มหำวทยำลยทกษณ 2554. http://www2.tsu.ac.th/. คน

เมอ 23 มนำคม, 2561.

พมพสทธ บวแกว และ รตพร ถงฝง 2559. กำรดแลสขภำพและภำวะสขภำพของผสงอำยไทย ,วำรสำร สมำคม

นกวจย ปท 21 ฉบบท 2 พฤษภำคม - สงหำคม 2559

วชพลประสทธ กอนแกว 2557. พฤตกรรมสขภำพของผสงอำยทอำศยในเขตเทศบำลต ำบลคลองต ำหร อ ำเภอ

เมองชลบร . มหาวทยาลยบรพา 2557. http://digital_collect.lib.buu.ac.th คนเมอ 23 มนำคม,

2561.

วไลพร ข ำวงษ จตพร หนสวสด วรำรตนประทำนวรปญญำ จดำภำ ศรปญญำ 2554 ปจจยทมควำมสมพนธกบ

คณภำพชวตของผสงอำย JOURNAL OF HEALTH SCIENCE RESEARCH Volume 5 No. 2 : July -

December 2011

Bandara, N. , Raghavan, V. , Yoshida, D. , & Jayasinghe, P) . 2016 . ( Development of Field Data Monitoring and Evaluation Platform using Customizable Mobile Application and Web- Mapping Tool .Thesis, Osaka City University.

Carl Hartung et al. 2010. Open Data Kit: Tools to Build Information Services for Developing Regions, ICTD, 2010 https://opendatakit.org/community/research/

Humhong, C., Choosumrong, S. and Homhuan, S. (2016) Development Web-Enabled Conserding Decision Support System for Staff Dormitory Service in Naresuan University using pgRouting, Naresuan University Journal; Science and Technology, 1(23) , pp.115-127 ( ISSN 0858-7418)

Kumari Pritee 2017 Identification of Optimum Shortest Path using Multipath Dijkstra’s Algorithm Approach http://technical.cloud-journals.com (ISSN 2320-0243)

Maria Antonia Brovelli Marco Minghini Giorgio Zamboni 2016 Public participation in GIS via mobile applications ISPRS Journal of Photogrammetry and Remote Sensing

54

Rohit Chaudhri et al. 2012 Open Data Kit Sensors: Mobile Data Collection with Wired and Wireless Sensors https://opendatakit.org/community/research/

Waylon Brunette et al. 2013 Open Data Kit 2.0: Expanding and Refining Information Services for Developing Regions https://opendatakit.org/community/research/

ภาคผนวก ก

แบบส ารวจสอบถามเพอเกบขอมลผสงอายและบานผสงอายดวยแอปพลเคชน ODK Collect

56

โคด Xml ของแบบสอบถาม <h:html xmlns="http://www.w3.org/2002/xforms" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:jr="http://openrosa.org/javarosa">

<h:head><!-- ODK Aggregate upload time: 2018-06-27T09:52:55.982+0000 on http://103.82.248.220:8080/ODKAggregate -->

<h:title>phichai_khorum</h:title>

<model>

<instance>

<data id="build_phichai-khorum-form_1530005810">

<meta>

<instanceID/>

</meta>

<group1>

<name/>

<gender/>

<birthday/>

<id/>

</group1>

<group2>

<home_id/>

<Tel/>

<owner_id/>

</group2>

57

<group3>

<moo/>

<amphoe>

Phichai

</amphoe>

<province>

Uttaradit

</province>

</group3>

<nationality/>

<nationality2/>

<religion/>

<religion2/>

<disease/>

<type_of_disease/>

<type_of_disease2/>

<stay_with/>

<stay_with2/>

<care/>

<care2/>

<disabled/>

<type_disabled/>

58

<activity>

<eat/>

<about_face/>

<q14.3/>

<q14.4/>

<q14.5/>

<q14.6/>

</activity>

<untitled85>

<q14.7/>

<q14.8/>

<q14.9/>

<q14.10/>

</untitled85>

<q14_2/>

<q15>

<q15_1/>

<q15_1_1/>

<q15_2/>

<q15_2_1/>

<q15_3/>

<q15_4/>

59

<q15_4_1/>

<q15_5/>

<q15_6/>

<q15_6_1/>

</q15>

<q16/>

<q16_1/>

<q17/>

<q18/>

<q18_1/>

<q19/>

<q19_1/>

<q20/>

<q21/>

<q21_1/>

<Localtion/>

<photo_elderly/>

<photo_home/>

<surveyer/>

</data>

</instance>

<itext>

60

<translation lang="English">

<text id="/data/group1:label">

<value> ขอมลพนฐาน</value>

</text>

<text id="/data/group1/name:label">

<value>ชอ-สกล</value>

</text>

<text id="/data/group1/gender:label">

<value>เพศ</value>

</text>

<text id="/data/group1/gender:option0">

<value>ชาย</value>

</text>

<text id="/data/group1/gender:option1">

<value>หญง</value>

</text>

<text id="/data/group1/birthday:label">

<value>วนเดอนปเกด</value>

</text>

<text id="/data/group1/id:label">

<value>เลขบตรประชาชน</value>

</text>

61

<text id="/data/group2:label">

<value>ขอมลพนฐาน</value>

</text>

<text id="/data/group2/home_id:label">

<value>บานเลขท</value>

</text>

<text id="/data/group2/Tel:label">

<value>เบอรโทรศพทผสงอาย</value>

</text>

<text id="/data/group2/owner_id:label">

<value>รหสประจ าบาน</value>

</text>

<text id="/data/group3:label">

<value>หมบาน</value>

</text>

<text id="/data/group3/moo:label">

<value>หมบาน</value>

</text>

<text id="/data/group3/moo:hint">

<value></value>

</text>

<text id="/data/group3/moo:option0">

62

<value>หม 1 บานปากคลอง</value>

</text>

<text id="/data/group3/moo:option1">

<value>หม 2 บานมวงตาล</value>

</text>

<text id="/data/group3/moo:option2">

<value>หม 3 บานกองโค</value>

</text>

<text id="/data/group3/moo:option3">

<value>หม 4 บานปาแตว</value>

</text>

<text id="/data/group3/moo:option4">

<value>หม 5 บานทาเดอ</value>

</text>

<text id="/data/group3/moo:option5">

<value>หม 6 บานกองโค</value>

</text>

<text id="/data/group3/moo:option6">

<value>หม 7 บานบางนา</value>

</text>

<text id="/data/group3/moo:option7">

<value>หม 8 บานคลองกลวย</value>

63

</text>

<text id="/data/group3/moo:option8">

<value>หม 9 บานคลองน าไหล</value>

</text>

<text id="/data/group3/moo:option9">

<value>หม 10 บานหนองล</value>

</text>

<text id="/data/group3/moo:option10">

<value>หม 11 บานไทรเอน</value>

</text>

<text id="/data/group3/moo:option11">

<value>หม 12 บานบางนาเหนอ</value>

</text>

<text id="/data/group3/amphoe:label">

<value>อ าเภอ</value>

</text>

<text id="/data/group3/amphoe:option0">

<value>พชย</value>

</text>

<text id="/data/group3/province:label">

<value>จงหวด</value>

</text>

64

<text id="/data/group3/province:option0">

<value>อตรดตถ</value>

</text>

<text id="/data/nationality:label">

<value>สญชาต</value>

</text>

<text id="/data/nationality:option0">

<value>ไทย</value>

</text>

<text id="/data/nationality:option1">

<value>อนๆ</value>

</text>

<text id="/data/nationality2:label">

<value>กรณาระบสญชาต</value>

</text>

<text id="/data/religion:label">

<value>ศาสนา</value>

</text>

<text id="/data/religion:option0">

<value>พทธ</value>

</text>

<text id="/data/religion:option1">

65

<value>ครสต</value>

</text>

<text id="/data/religion:option2">

<value>อสลาม</value>

</text>

<text id="/data/religion:option3">

<value>อนๆ</value>

</text>

<text id="/data/religion2:label">

<value>กรณาระบศาสนา</value>

</text>

<text id="/data/disease:label">

<value>โรคประจ าตว</value>

</text>

<text id="/data/disease:option0">

<value>ม</value>

</text>

<text id="/data/disease:option1">

<value>ไมม</value>

</text>

<text id="/data/type_of_disease:label">

<value>ประเภทของโรคททานเปน</value>

66

</text>

<text id="/data/type_of_disease:option0">

<value>เบาหวาน</value>

</text>

<text id="/data/type_of_disease:option1">

<value>ความดน</value>

</text>

<text id="/data/type_of_disease:option2">

<value>ปวดขอ/ขอเสอม</value>

</text>

<text id="/data/type_of_disease:option3">

<value>หวใจ</value>

</text>

<text id="/data/type_of_disease:option4">

<value>มะเรง</value>

</text>

<text id="/data/type_of_disease:option5">

<value>หอบหด</value>

</text>

<text id="/data/type_of_disease:option6">

<value>ภมแพ</value>

</text>

67

<text id="/data/type_of_disease:option7">

<value>เกาส</value>

</text>

<text id="/data/type_of_disease:option8">

<value>ไตวาย</value>

</text>

<text id="/data/type_of_disease:option9">

<value>อมพาต</value>

</text>

<text id="/data/type_of_disease:option10">

<value>สมองเสอม</value>

</text>

<text id="/data/type_of_disease:option11">

<value>โรคจต</value>

</text>

<text id="/data/type_of_disease:option12">

<value>ถงลมโปงพอง</value>

</text>

<text id="/data/type_of_disease:option13">

<value>ไขมน</value>

</text>

<text id="/data/type_of_disease:option14">

68

<value>อนๆ</value>

</text>

<text id="/data/type_of_disease2:label">

<value>กรณาระบโรคททานเปน</value>

</text>

<text id="/data/stay_with:label">

<value>การพกอยอาศย</value>

</text>

<text id="/data/stay_with:hint">

<value></value>

</text>

<text id="/data/stay_with:option0">

<value>อยล าพง</value>

</text>

<text id="/data/stay_with:option1">

<value>อยกบคสมรส</value>

</text>

<text id="/data/stay_with:option2">

<value>อยกบลกหลาน</value>

</text>

<text id="/data/stay_with:option3">

<value>อยกบคนอนๆ</value>

69

</text>

<text id="/data/stay_with2:label">

<value>อยกบใคร</value>

</text>

<text id="/data/stay_with2:option0">

<value>ญาต(พ ปา นา อา)</value>

</text>

<text id="/data/stay_with2:option1">

<value>เพอนบาน</value>

</text>

<text id="/data/stay_with2:option2">

<value>ผดแลผสงอาย CG</value>

</text>

<text id="/data/care:label">

<value>การดแล</value>

</text>

<text id="/data/care:hint">

<value></value>

</text>

<text id="/data/care:option0">

<value>ดแลตวเอง</value>

</text>

70

<text id="/data/care:option1">

<value>ลกหลานดแล</value>

</text>

<text id="/data/care:option2">

<value>คสมรสดแล</value>

</text>

<text id="/data/care:option3">

<value>อนๆ</value>

</text>

<text id="/data/care2:label">

<value>ใครดแล</value>

</text>

<text id="/data/care2:hint">

<value></value>

</text>

<text id="/data/care2:option0">

<value>ผดแลสงอาย(CG)</value>

</text>

<text id="/data/care2:option1">

<value>ญาต(พ ปา นา อา) ดแล</value>

</text>

<text id="/data/disabled:label">

71

<value>ความพการ</value>

</text>

<text id="/data/disabled:hint">

<value></value>

</text>

<text id="/data/disabled:option0">

<value>ม</value>

</text>

<text id="/data/disabled:option1">

<value>ไมม</value>

</text>

<text id="/data/type_disabled:label">

<value>ลกษณะความพการ</value>

</text>

<text id="/data/type_disabled:option0">

<value>ทางการมองเหน</value>

</text>

<text id="/data/type_disabled:option1">

<value>ทางการไดยนหรอสอความหมาย</value>

</text>

<text id="/data/type_disabled:option2">

<value>ทางการเคลอนไหวหรอรางกาย</value>

72

</text>

<text id="/data/type_disabled:option3">

<value>ทางจตใจหรอพฤตกรรม</value>

</text>

<text id="/data/type_disabled:option4">

<value>ดานสตปญญา</value>

</text>

<text id="/data/type_disabled:option5">

<value>ดานการเรยนร</value>

</text>

<text id="/data/type_disabled:option6">

<value>ดานออทสตก</value>

</text>

<text id="/data/type_disabled:option7">

<value>ลงทะเบยนผพการแลว</value>

</text>

<text id="/data/type_disabled:option8">

<value>ยงไมไดลงทะเบยนผพการ</value>

</text>

<text id="/data/activity:label">

<value>การประเมนกจวตรประจ าวน</value>

</text>

73

<text id="/data/activity/eat:label">

<value>รบประทานอาหารเมอเตรยมส ารบไวใหเรยบรอยตอหนา</value>

</text>

<text id="/data/activity/eat:option0">

<value>ไมสามารถตกอาหารเขาปากได</value>

</text>

<text id="/data/activity/eat:option1">

<value>ตกอาหารเองได แตตองมคนชวย</value>

</text>

<text id="/data/activity/eat:option2">

<value>ตกอาหารเองไดและชวยเหลอตวเองไดปกต</value>

</text>

<text id="/data/activity/about_face:label">

<value>การลางหนา หวผม แปรงฟน โกนหนวดในระยะเวลา 24-48 ชวโมง</value>

</text>

<text id="/data/activity/about_face:hint">

<value></value>

</text>

<text id="/data/activity/about_face:option0">

<value>ตองการความชวยเหลอ</value>

</text>

<text id="/data/activity/about_face:option1">

74

<value>ท าไดเอง</value>

</text>

<text id="/data/activity/q14.3:label">

<value>ลกนงจากทนอนหรอจากเตยงไปยงเกาอ</value>

</text>

<text id="/data/activity/q14.3:option0">

<value>ไมสามารถนงได</value>

</text>

<text id="/data/activity/q14.3:option1">

<value>ตองการความชวยเหลออยางมากจงจะนงได</value>

</text>

<text id="/data/activity/q14.3:option2">

<value>ตองการความเหลอบาง</value>

</text>

<text id="/data/activity/q14.3:option3">

<value>ท าไดเอง</value>

</text>

<text id="/data/activity/q14.4:label">

<value>การใชหองน า</value>

</text>

<text id="/data/activity/q14.4:option0">

<value>ชวยตวเองไมได</value>

75

</text>

<text id="/data/activity/q14.4:option1">

<value>ท าเองไดบาง</value>

</text>

<text id="/data/activity/q14.4:option2">

<value>ชวยเหลอตวเองไดด</value>

</text>

<text id="/data/activity/q14.5:label">

<value>การเคลอนทภายในหองหรอบาน</value>

</text>

<text id="/data/activity/q14.5:option0">

<value>เคลอนทไปไหนไมได</value>

</text>

<text id="/data/activity/q14.5:option1">

<value>ตองใชรถเขนชวยตวเอง</value>

</text>

<text id="/data/activity/q14.5:option2">

<value>เดนหรอเคลอนทโดยมคนชวย</value>

</text>

<text id="/data/activity/q14.5:option3">

<value>เดนหรอเคลอนทเองได</value>

</text>

76

<text id="/data/activity/q14.6:label">

<value>การสวมใสเสอผา</value>

</text>

<text id="/data/activity/q14.6:option0">

<value>ตองมคนสวมใสให ชวยตวเองแทบไมไดหรอไดนอย</value>

</text>

<text id="/data/activity/q14.6:option1">

<value>ชวยตวเองไดประมาณรอยละ50ทเหลอตองมคนชวย</value>

</text>

<text id="/data/activity/q14.6:option2">

<value>ชวยตวเองไดด</value>

</text>

<text id="/data/untitled85:label">

<value>การประเมนกจวตรประจ าวน</value>

</text>

<text id="/data/untitled85/q14.7:label">

<value>การขนลงบนได1ชน</value>

</text>

<text id="/data/untitled85/q14.7:option0">

<value>ไมสามารถท าได</value>

</text>

<text id="/data/untitled85/q14.7:option1">

77

<value>ตองกาารคนชวย</value>

</text>

<text id="/data/untitled85/q14.7:option2">

<value>ขนลงไดเอง</value>

</text>

<text id="/data/untitled85/q14.8:label">

<value>การอาบน า</value>

</text>

<text id="/data/untitled85/q14.8:option0">

<value>ตองมคนชวยหรอท าให</value>

</text>

<text id="/data/untitled85/q14.8:option1">

<value>อาบน าไดเอง</value>

</text>

<text id="/data/untitled85/q14.9:label">

<value>การกลนการถายอจจาระ ใน1 สปดาหทผานมา</value>

</text>

<text id="/data/untitled85/q14.9:option0">

<value>กลนไมไดหรอ ตองการการสวนอจจระอยเสมอ</value>

</text>

<text id="/data/untitled85/q14.9:option1">

<value>กลนไมไดบางครง</value>

78

</text>

<text id="/data/untitled85/q14.9:option2">

<value>กลนไดปกต</value>

</text>

<text id="/data/untitled85/q14.10:label">

<value>การกลนปสสาวะ ใน1 สปดาหทผานมา</value>

</text>

<text id="/data/untitled85/q14.10:option0">

<value>กลนไมไดหรอใสสายสวนปสสาวะ แตไมสามารถดแลเองได</value>

</text>

<text id="/data/untitled85/q14.10:option1">

<value>กลนไมไดบางครง</value>

</text>

<text id="/data/untitled85/q14.10:option2">

<value>กลนไดปกต</value>

</text>

<text id="/data/q14_2:label">

<value>กลมผสงอาย</value>

</text>

<text id="/data/q14_2:option0">

<value>ตดบาน</value>

</text>

79

<text id="/data/q14_2:option1">

<value>ตดเตยง</value>

</text>

<text id="/data/q14_2:option2">

<value>ตดสงคม</value>

</text>

<text id="/data/q14_2:option3">

<value>ยงระบไมได</value>

</text>

<text id="/data/q15:label">

<value>พฤตกรรมเสยง</value>

</text>

<text id="/data/q15/q15_1:label">

<value>ดมสรา</value>

</text>

<text id="/data/q15/q15_1:option0">

<value>ไมดม</value>

</text>

<text id="/data/q15/q15_1:option1">

<value>ดม</value>

</text>

<text id="/data/q15/q15_1_1:label">

80

<value>ดมบอยแคไหน</value>

</text>

<text id="/data/q15/q15_1_1:option0">

<value>ดมเปนประจ า</value>

</text>

<text id="/data/q15/q15_1_1:option1">

<value>ดมบางครง</value>

</text>

<text id="/data/q15/q15_2:label">

<value>สบบหร</value>

</text>

<text id="/data/q15/q15_2:option0">

<value>สบ</value>

</text>

<text id="/data/q15/q15_2:option1">

<value>ไมสบ</value>

</text>

<text id="/data/q15/q15_2_1:label">

<value>สบบอยแคไหน</value>

</text>

<text id="/data/q15/q15_2_1:option0">

<value>สบบางครง</value>

81

</text>

<text id="/data/q15/q15_2_1:option1">

<value>สบเปนประจ า</value>

</text>

<text id="/data/q15/q15_3:label">

<value>เวลาวาง/งานอดเรก</value>

</text>

<text id="/data/q15/q15_3:option0">

<value>นงๆนอนไมท างาน</value>

</text>

<text id="/data/q15/q15_3:option1">

<value>ท างานบาน</value>

</text>

<text id="/data/q15/q15_3:option2">

<value>เลยงหลาน</value>

</text>

<text id="/data/q15/q15_3:option3">

<value>ท างานนอกบาน</value>

</text>

<text id="/data/q15/q15_4:label">

<value>ความเครยด</value>

</text>

82

<text id="/data/q15/q15_4:option0">

<value>เครยด</value>

</text>

<text id="/data/q15/q15_4:option1">

<value>ไมเครยด</value>

</text>

<text id="/data/q15/q15_4_1:label">

<value>เครยดเพราะอะไร</value>

</text>

<text id="/data/q15/q15_4_1:option0">

<value>รสกหดห</value>

</text>

<text id="/data/q15/q15_4_1:option1">

<value>รสกเหงา ไมมคนดแล</value>

</text>

<text id="/data/q15/q15_4_1:option2">

<value>ไมมรายได</value>

</text>

<text id="/data/q15/q15_4_1:option3">

<value>ปญหาสขภาพ</value>

</text>

<text id="/data/q15/q15_5:label">

83

<value>การออกก าลงกาย</value>

</text>

<text id="/data/q15/q15_5:option0">

<value>ไมไดออกก าลงกาย</value>

</text>

<text id="/data/q15/q15_5:option1">

<value>1-2 ครง/สปดาห</value>

</text>

<text id="/data/q15/q15_5:option2">

<value>3-5ครง/สปดาห</value>

</text>

<text id="/data/q15/q15_5:option3">

<value>เปนประจ า</value>

</text>

<text id="/data/q15/q15_6:label">

<value>การกนอาหาร</value>

</text>

<text id="/data/q15/q15_6:option0">

<value>ปกต</value>

</text>

<text id="/data/q15/q15_6:option1">

<value>ไมปกต</value>

84

</text>

<text id="/data/q15/q15_6_1:label">

<value>ไมปกตเพราะอะไร</value>

</text>

<text id="/data/q15/q15_6_1:option0">

<value>อาหารรสจด</value>

</text>

<text id="/data/q15/q15_6_1:option1">

<value>อาหารหวาน มน เคม</value>

</text>

<text id="/data/q15/q15_6_1:option2">

<value>กนอาหารไมตรงเวลา</value>

</text>

<text id="/data/q16:label">

<value>ทมาของรายได</value>

</text>

<text id="/data/q16:option0">

<value>เบยยงชพ</value>

</text>

<text id="/data/q16:option1">

<value>ลกหลานสงให</value>

</text>

85

<text id="/data/q16:option2">

<value>บ านาญ/กองทนเลยงชพ</value>

</text>

<text id="/data/q16:option3">

<value>อนๆ</value>

</text>

<text id="/data/q16_1:label">

<value>ระบทมาของรายได</value>

</text>

<text id="/data/q17:label">

<value>รายได/เดอน</value>

</text>

<text id="/data/q17:option0">

<value>0-1000</value>

</text>

<text id="/data/q17:option1">

<value>1000-5000</value>

</text>

<text id="/data/q17:option2">

<value>&gt;5000</value>

</text>

<text id="/data/q18:label">

86

<value>ความเชยวชาญ/ความถนด</value>

</text>

<text id="/data/q18:option0">

<value>รองเพลง/ฉอย/เพลงพนบาน</value>

</text>

<text id="/data/q18:option1">

<value>เตนร า</value>

</text>

<text id="/data/q18:option2">

<value>ท าอาหาร</value>

</text>

<text id="/data/q18:option3">

<value>ภมปญญาพนบาน</value>

</text>

<text id="/data/q18_1:label">

<value>ความถนดภมปญญาพนบาน</value>

</text>

<text id="/data/q18_1:option0">

<value>สนนไพร</value>

</text>

<text id="/data/q18_1:option1">

<value>หมอเปา/พน</value>

87

</text>

<text id="/data/q18_1:option2">

<value>จกรสาน</value>

</text>

<text id="/data/q18_1:option3">

<value>นวดประคบ</value>

</text>

<text id="/data/q19:label">

<value>สภาพปญหา</value>

</text>

<text id="/data/q19:option0">

<value>มปญหา</value>

</text>

<text id="/data/q19:option1">

<value>ไมมปญหา</value>

</text>

<text id="/data/q19_1:label">

<value>มปญหาเกยวกบ</value>

</text>

<text id="/data/q19_1:option0">

<value>ทอยอาศยไมปลอดภย</value>

</text>

88

<text id="/data/q19_1:option1">

<value>ยาเสพตดในพนท</value>

</text>

<text id="/data/q19_1:option2">

<value>การลกขโมย</value>

</text>

<text id="/data/q19_1:option3">

<value>สงแวดลอม</value>

</text>

<text id="/data/q19_1:option4">

<value>ขาดผดแล</value>

</text>

<text id="/data/q19_1:option5">

<value>ปญหาครอบครว</value>

</text>

<text id="/data/q19_1:option6">

<value>เดนทางไมสะดวก</value>

</text>

<text id="/data/q19_1:option7">

<value>ยากจน</value>

</text>

<text id="/data/q20:label">

89

<value>ความตองการความชวยเหลอ</value>

</text>

<text id="/data/q20:option0">

<value>ตองการ</value>

</text>

<text id="/data/q20:option1">

<value>ไมตองการ</value>

</text>

<text id="/data/q21:label">

<value>ตองการความชวยเหลอเกยวกบ</value>

</text>

<text id="/data/q21:option0">

<value>การเดนทาง</value>

</text>

<text id="/data/q21:option1">

<value>เงนทนประกอบอาชพ</value>

</text>

<text id="/data/q21:option2">

<value>ทอยอาศย</value>

</text>

<text id="/data/q21:option3">

<value>อนๆ</value>

90

</text>

<text id="/data/q21_1:label">

<value>ระบความตองการ</value>

</text>

<text id="/data/Localtion:label">

<value>ต าแหนงทตงผสงอาย</value>

</text>

<text id="/data/photo_elderly:label">

<value>ภาพผสงอาย</value>

</text>

<text id="/data/photo_home:label">

<value>ภาพทอยอาศยทสงอาย</value>

</text>

<text id="/data/surveyer:label">

<value>ชอผบนทกขอมล</value>

</text>

</translation>

</itext>

<bind nodeset="/data/meta/instanceID" type="string" readonly="true()" calculate="concat('uuid:', uuid())"/>

<bind nodeset="/data/group1/name" type="string"/>

<bind nodeset="/data/group1/gender" type="select1"/>

<bind nodeset="/data/group1/birthday" type="date"/>

91

<bind nodeset="/data/group1/id" type="string" required="true()" constraint="(regex(., &quot;^.{13,13}$&quot;))" jr:constraintMsg="Response length must be between 13 and 13"/>

<bind nodeset="/data/group2/home_id" type="string"/>

<bind nodeset="/data/group2/Tel" type="int"/>

<bind nodeset="/data/group2/owner_id" type="string"/>

<bind nodeset="/data/group3/moo" type="select1"/>

<bind nodeset="/data/group3/amphoe" type="select1"/>

<bind nodeset="/data/group3/province" type="select1"/>

<bind nodeset="/data/nationality" type="select1"/>

<bind nodeset="/data/nationality2" type="string" relevant="(selected(/data/nationality, 'other'))"/>

<bind nodeset="/data/religion" type="select1"/>

<bind nodeset="/data/religion2" type="string" relevant="(selected(/data/religion, 'religion_other'))"/>

<bind nodeset="/data/disease" type="select1"/>

<bind nodeset="/data/type_of_disease" type="select" relevant="(selected(/data/disease, 'yes'))"/>

<bind nodeset="/data/type_of_disease2" type="string" relevant="(selected(/data/type_of_disease, '15'))"/>

<bind nodeset="/data/stay_with" type="select1"/>

<bind nodeset="/data/stay_with2" type="select1" relevant="(selected(/data/stay_with, '11.4'))"/>

<bind nodeset="/data/care" type="select1"/>

<bind nodeset="/data/care2" type="select1" relevant="(selected(/data/care, '12.4'))"/>

92

<bind nodeset="/data/disabled" type="select1"/>

<bind nodeset="/data/type_disabled" type="select" relevant="(selected(/data/disabled, 'yes'))"/>

<bind nodeset="/data/activity/eat" type="select1"/>

<bind nodeset="/data/activity/about_face" type="select1"/>

<bind nodeset="/data/activity/q14.3" type="select1"/>

<bind nodeset="/data/activity/q14.4" type="select1"/>

<bind nodeset="/data/activity/q14.5" type="select1"/>

<bind nodeset="/data/activity/q14.6" type="select1"/>

<bind nodeset="/data/untitled85/q14.7" type="select1"/>

<bind nodeset="/data/untitled85/q14.8" type="select1"/>

<bind nodeset="/data/untitled85/q14.9" type="select1"/>

<bind nodeset="/data/untitled85/q14.10" type="select1"/>

<bind nodeset="/data/q14_2" type="select1"/>

<bind nodeset="/data/q15/q15_1" type="select1"/>

<bind nodeset="/data/q15/q15_1_1" type="select1" relevant="(selected(/data/q15/q15_1, 'yes'))"/>

<bind nodeset="/data/q15/q15_2" type="select1"/>

<bind nodeset="/data/q15/q15_2_1" type="select1" relevant="(selected(/data/q15/q15_2, 'yes'))"/>

<bind nodeset="/data/q15/q15_3" type="select1"/>

<bind nodeset="/data/q15/q15_4" type="select1"/>

<bind nodeset="/data/q15/q15_4_1" type="select1" relevant="(selected(/data/q15/q15_4, 'yes'))"/>

93

<bind nodeset="/data/q15/q15_5" type="select1"/>

<bind nodeset="/data/q15/q15_6" type="select1"/>

<bind nodeset="/data/q15/q15_6_1" type="select" relevant="(selected(/data/q15/q15_6, 'no'))"/>

<bind nodeset="/data/q16" type="select"/>

<bind nodeset="/data/q16_1" type="string" relevant="(selected(/data/q16, 'other'))"/>

<bind nodeset="/data/q17" type="select1"/>

<bind nodeset="/data/q18" type="select"/>

<bind nodeset="/data/q18_1" type="select" relevant="(selected(/data/q18, '18.4'))"/>

<bind nodeset="/data/q19" type="select1"/>

<bind nodeset="/data/q19_1" type="select" relevant="(selected(/data/q19, 'yes'))"/>

<bind nodeset="/data/q20" type="select1"/>

<bind nodeset="/data/q21" type="select"/>

<bind nodeset="/data/q21_1" type="string" relevant="(selected(/data/q21, 'other'))"/>

<bind nodeset="/data/Localtion" type="geopoint"/>

<bind nodeset="/data/photo_elderly" type="binary"/>

<bind nodeset="/data/photo_home" type="binary"/>

<bind nodeset="/data/surveyer" type="string"/>

</model>

</h:head>

<h:body>

<group appearance="field-list">

<label ref="jr:itext('/data/group1:label')"/>

94

<input ref="/data/group1/name">

<label ref="jr:itext('/data/group1/name:label')"/>

</input>

<select1 ref="/data/group1/gender">

<label ref="jr:itext('/data/group1/gender:label')"/>

<item>

<label ref="jr:itext('/data/group1/gender:option0')"/>

<value>male</value>

</item>

<item>

<label ref="jr:itext('/data/group1/gender:option1')"/>

<value>female</value>

</item>

</select1>

<input ref="/data/group1/birthday">

<label ref="jr:itext('/data/group1/birthday:label')"/>

</input>

<input ref="/data/group1/id">

<label ref="jr:itext('/data/group1/id:label')"/>

</input>

</group>

<group appearance="field-list">

95

<label ref="jr:itext('/data/group2:label')"/>

<input ref="/data/group2/home_id">

<label ref="jr:itext('/data/group2/home_id:label')"/>

</input>

<input ref="/data/group2/Tel">

<label ref="jr:itext('/data/group2/Tel:label')"/>

</input>

<input ref="/data/group2/owner_id">

<label ref="jr:itext('/data/group2/owner_id:label')"/>

</input>

</group>

<group appearance="field-list">

<label ref="jr:itext('/data/group3:label')"/>

<select1 ref="/data/group3/moo">

<label ref="jr:itext('/data/group3/moo:label')"/>

<hint ref="jr:itext('/data/group3/moo:hint')"/>

<item>

<label ref="jr:itext('/data/group3/moo:option0')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option1')"/>

96

<value>2</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option2')"/>

<value>3</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option3')"/>

<value>4</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option4')"/>

<value>5</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option5')"/>

<value>6</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option6')"/>

<value>7</value>

</item>

97

<item>

<label ref="jr:itext('/data/group3/moo:option7')"/>

<value>8</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option8')"/>

<value>9</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option9')"/>

<value>10</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option10')"/>

<value>11</value>

</item>

<item>

<label ref="jr:itext('/data/group3/moo:option11')"/>

<value>12</value>

</item>

</select1>

<select1 ref="/data/group3/amphoe">

98

<label ref="jr:itext('/data/group3/amphoe:label')"/>

<item>

<label ref="jr:itext('/data/group3/amphoe:option0')"/>

<value>Phichai</value>

</item>

</select1>

<select1 ref="/data/group3/province">

<label ref="jr:itext('/data/group3/province:label')"/>

<item>

<label ref="jr:itext('/data/group3/province:option0')"/>

<value>Uttaradit</value>

</item>

</select1>

</group>

<select1 ref="/data/nationality">

<label ref="jr:itext('/data/nationality:label')"/>

<item>

<label ref="jr:itext('/data/nationality:option0')"/>

<value>Thai</value>

</item>

<item>

<label ref="jr:itext('/data/nationality:option1')"/>

99

<value>other</value>

</item>

</select1>

<input ref="/data/nationality2">

<label ref="jr:itext('/data/nationality2:label')"/>

</input>

<select1 ref="/data/religion">

<label ref="jr:itext('/data/religion:label')"/>

<item>

<label ref="jr:itext('/data/religion:option0')"/>

<value>Buddism</value>

</item>

<item>

<label ref="jr:itext('/data/religion:option1')"/>

<value>Christ</value>

</item>

<item>

<label ref="jr:itext('/data/religion:option2')"/>

<value>islam</value>

</item>

<item>

<label ref="jr:itext('/data/religion:option3')"/>

100

<value>religion_other</value>

</item>

</select1>

<input ref="/data/religion2">

<label ref="jr:itext('/data/religion2:label')"/>

</input>

<select1 ref="/data/disease">

<label ref="jr:itext('/data/disease:label')"/>

<item>

<label ref="jr:itext('/data/disease:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/disease:option1')"/>

<value>no</value>

</item>

</select1>

<select ref="/data/type_of_disease">

<label ref="jr:itext('/data/type_of_disease:label')"/>

<item>

<label ref="jr:itext('/data/type_of_disease:option0')"/>

<value>1</value>

101

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option1')"/>

<value>2</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option2')"/>

<value>3</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option3')"/>

<value>4</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option4')"/>

<value>5</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option5')"/>

<value>6</value>

</item>

<item>

102

<label ref="jr:itext('/data/type_of_disease:option6')"/>

<value>7</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option7')"/>

<value>8</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option8')"/>

<value>9</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option9')"/>

<value>10</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option10')"/>

<value>11</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option11')"/>

<value>12</value>

103

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option12')"/>

<value>13</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option13')"/>

<value>14</value>

</item>

<item>

<label ref="jr:itext('/data/type_of_disease:option14')"/>

<value>15</value>

</item>

</select>

<input ref="/data/type_of_disease2">

<label ref="jr:itext('/data/type_of_disease2:label')"/>

</input>

<select1 ref="/data/stay_with">

<label ref="jr:itext('/data/stay_with:label')"/>

<hint ref="jr:itext('/data/stay_with:hint')"/>

<item>

<label ref="jr:itext('/data/stay_with:option0')"/>

104

<value>11.1</value>

</item>

<item>

<label ref="jr:itext('/data/stay_with:option1')"/>

<value>11.2</value>

</item>

<item>

<label ref="jr:itext('/data/stay_with:option2')"/>

<value>11.3</value>

</item>

<item>

<label ref="jr:itext('/data/stay_with:option3')"/>

<value>11.4</value>

</item>

</select1>

<select1 ref="/data/stay_with2">

<label ref="jr:itext('/data/stay_with2:label')"/>

<item>

<label ref="jr:itext('/data/stay_with2:option0')"/>

<value>11.4.1</value>

</item>

<item>

105

<label ref="jr:itext('/data/stay_with2:option1')"/>

<value>11.4.2</value>

</item>

<item>

<label ref="jr:itext('/data/stay_with2:option2')"/>

<value>11.4.3</value>

</item>

</select1>

<select1 ref="/data/care">

<label ref="jr:itext('/data/care:label')"/>

<hint ref="jr:itext('/data/care:hint')"/>

<item>

<label ref="jr:itext('/data/care:option0')"/>

<value>12.1</value>

</item>

<item>

<label ref="jr:itext('/data/care:option1')"/>

<value>12.2</value>

</item>

<item>

<label ref="jr:itext('/data/care:option2')"/>

<value>12.3</value>

106

</item>

<item>

<label ref="jr:itext('/data/care:option3')"/>

<value>12.4</value>

</item>

</select1>

<select1 ref="/data/care2">

<label ref="jr:itext('/data/care2:label')"/>

<hint ref="jr:itext('/data/care2:hint')"/>

<item>

<label ref="jr:itext('/data/care2:option0')"/>

<value>12.4.1</value>

</item>

<item>

<label ref="jr:itext('/data/care2:option1')"/>

<value>12.4.2</value>

</item>

</select1>

<select1 ref="/data/disabled">

<label ref="jr:itext('/data/disabled:label')"/>

<hint ref="jr:itext('/data/disabled:hint')"/>

<item>

107

<label ref="jr:itext('/data/disabled:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/disabled:option1')"/>

<value>no</value>

</item>

</select1>

<select ref="/data/type_disabled">

<label ref="jr:itext('/data/type_disabled:label')"/>

<item>

<label ref="jr:itext('/data/type_disabled:option0')"/>

<value>13.2.1</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option1')"/>

<value>13.2.2</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option2')"/>

<value>13.2.3</value>

</item>

108

<item>

<label ref="jr:itext('/data/type_disabled:option3')"/>

<value>13.2.4</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option4')"/>

<value>13.2.5</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option5')"/>

<value>13.2.6</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option6')"/>

<value>13.2.7</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option7')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/type_disabled:option8')"/>

109

<value>no</value>

</item>

</select>

<group appearance="field-list">

<label ref="jr:itext('/data/activity:label')"/>

<select1 ref="/data/activity/eat">

<label ref="jr:itext('/data/activity/eat:label')"/>

<item>

<label ref="jr:itext('/data/activity/eat:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/eat:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/activity/eat:option2')"/>

<value>2</value>

</item>

</select1>

<select1 ref="/data/activity/about_face">

<label ref="jr:itext('/data/activity/about_face:label')"/>

110

<hint ref="jr:itext('/data/activity/about_face:hint')"/>

<item>

<label ref="jr:itext('/data/activity/about_face:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/about_face:option1')"/>

<value>1</value>

</item>

</select1>

<select1 ref="/data/activity/q14.3">

<label ref="jr:itext('/data/activity/q14.3:label')"/>

<item>

<label ref="jr:itext('/data/activity/q14.3:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.3:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.3:option2')"/>

111

<value>2</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.3:option3')"/>

<value>3</value>

</item>

</select1>

<select1 ref="/data/activity/q14.4">

<label ref="jr:itext('/data/activity/q14.4:label')"/>

<item>

<label ref="jr:itext('/data/activity/q14.4:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.4:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.4:option2')"/>

<value>2</value>

</item>

</select1>

112

<select1 ref="/data/activity/q14.5">

<label ref="jr:itext('/data/activity/q14.5:label')"/>

<item>

<label ref="jr:itext('/data/activity/q14.5:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.5:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.5:option2')"/>

<value>2</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.5:option3')"/>

<value>3</value>

</item>

</select1>

<select1 ref="/data/activity/q14.6">

<label ref="jr:itext('/data/activity/q14.6:label')"/>

<item>

113

<label ref="jr:itext('/data/activity/q14.6:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.6:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/activity/q14.6:option2')"/>

<value>2</value>

</item>

</select1>

</group>

<group appearance="field-list">

<label ref="jr:itext('/data/untitled85:label')"/>

<select1 ref="/data/untitled85/q14.7">

<label ref="jr:itext('/data/untitled85/q14.7:label')"/>

<item>

<label ref="jr:itext('/data/untitled85/q14.7:option0')"/>

<value>0</value>

</item>

<item>

114

<label ref="jr:itext('/data/untitled85/q14.7:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/untitled85/q14.7:option2')"/>

<value>2</value>

</item>

</select1>

<select1 ref="/data/untitled85/q14.8">

<label ref="jr:itext('/data/untitled85/q14.8:label')"/>

<item>

<label ref="jr:itext('/data/untitled85/q14.8:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/untitled85/q14.8:option1')"/>

<value>1</value>

</item>

</select1>

<select1 ref="/data/untitled85/q14.9">

<label ref="jr:itext('/data/untitled85/q14.9:label')"/>

<item>

115

<label ref="jr:itext('/data/untitled85/q14.9:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/untitled85/q14.9:option1')"/>

<value>1</value>

</item>

<item>

<label ref="jr:itext('/data/untitled85/q14.9:option2')"/>

<value>2</value>

</item>

</select1>

<select1 ref="/data/untitled85/q14.10">

<label ref="jr:itext('/data/untitled85/q14.10:label')"/>

<item>

<label ref="jr:itext('/data/untitled85/q14.10:option0')"/>

<value>0</value>

</item>

<item>

<label ref="jr:itext('/data/untitled85/q14.10:option1')"/>

<value>1</value>

</item>

116

<item>

<label ref="jr:itext('/data/untitled85/q14.10:option2')"/>

<value>2</value>

</item>

</select1>

</group>

<select1 ref="/data/q14_2">

<label ref="jr:itext('/data/q14_2:label')"/>

<item>

<label ref="jr:itext('/data/q14_2:option0')"/>

<value>14.1</value>

</item>

<item>

<label ref="jr:itext('/data/q14_2:option1')"/>

<value>14.2</value>

</item>

<item>

<label ref="jr:itext('/data/q14_2:option2')"/>

<value>14.3</value>

</item>

<item>

<label ref="jr:itext('/data/q14_2:option3')"/>

117

<value>14.4</value>

</item>

</select1>

<group>

<label ref="jr:itext('/data/q15:label')"/>

<select1 ref="/data/q15/q15_1">

<label ref="jr:itext('/data/q15/q15_1:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_1:option0')"/>

<value>no</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_1:option1')"/>

<value>yes</value>

</item>

</select1>

<select1 ref="/data/q15/q15_1_1">

<label ref="jr:itext('/data/q15/q15_1_1:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_1_1:option0')"/>

<value>15.1.2.1</value>

</item>

118

<item>

<label ref="jr:itext('/data/q15/q15_1_1:option1')"/>

<value>15.1.2.2</value>

</item>

</select1>

<select1 ref="/data/q15/q15_2">

<label ref="jr:itext('/data/q15/q15_2:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_2:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_2:option1')"/>

<value>no</value>

</item>

</select1>

<select1 ref="/data/q15/q15_2_1">

<label ref="jr:itext('/data/q15/q15_2_1:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_2_1:option0')"/>

<value>15.2.2.1</value>

</item>

119

<item>

<label ref="jr:itext('/data/q15/q15_2_1:option1')"/>

<value>15.2.2.2</value>

</item>

</select1>

<select1 ref="/data/q15/q15_3">

<label ref="jr:itext('/data/q15/q15_3:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_3:option0')"/>

<value>15.3.1</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_3:option1')"/>

<value>15.3.2</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_3:option2')"/>

<value>15.3.3</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_3:option3')"/>

<value>15.3.4</value>

120

</item>

</select1>

<select1 ref="/data/q15/q15_4">

<label ref="jr:itext('/data/q15/q15_4:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_4:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_4:option1')"/>

<value>no</value>

</item>

</select1>

<select1 ref="/data/q15/q15_4_1">

<label ref="jr:itext('/data/q15/q15_4_1:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_4_1:option0')"/>

<value>15.4.1</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_4_1:option1')"/>

<value>15.4.2</value>

121

</item>

<item>

<label ref="jr:itext('/data/q15/q15_4_1:option2')"/>

<value>15.4.3</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_4_1:option3')"/>

<value>15.4.4</value>

</item>

</select1>

<select1 ref="/data/q15/q15_5">

<label ref="jr:itext('/data/q15/q15_5:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_5:option0')"/>

<value>15.5.1</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_5:option1')"/>

<value>15.5.2</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_5:option2')"/>

122

<value>15.5.3</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_5:option3')"/>

<value>15.5.4</value>

</item>

</select1>

<select1 ref="/data/q15/q15_6">

<label ref="jr:itext('/data/q15/q15_6:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_6:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_6:option1')"/>

<value>no</value>

</item>

</select1>

<select ref="/data/q15/q15_6_1">

<label ref="jr:itext('/data/q15/q15_6_1:label')"/>

<item>

<label ref="jr:itext('/data/q15/q15_6_1:option0')"/>

123

<value>15.6.1</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_6_1:option1')"/>

<value>15.6.2</value>

</item>

<item>

<label ref="jr:itext('/data/q15/q15_6_1:option2')"/>

<value>15.6.3</value>

</item>

</select>

</group>

<select ref="/data/q16">

<label ref="jr:itext('/data/q16:label')"/>

<item>

<label ref="jr:itext('/data/q16:option0')"/>

<value>16.1</value>

</item>

<item>

<label ref="jr:itext('/data/q16:option1')"/>

<value>16.2</value>

</item>

124

<item>

<label ref="jr:itext('/data/q16:option2')"/>

<value>16.3</value>

</item>

<item>

<label ref="jr:itext('/data/q16:option3')"/>

<value>other</value>

</item>

</select>

<input ref="/data/q16_1">

<label ref="jr:itext('/data/q16_1:label')"/>

</input>

<select1 ref="/data/q17">

<label ref="jr:itext('/data/q17:label')"/>

<item>

<label ref="jr:itext('/data/q17:option0')"/>

<value>17.1</value>

</item>

<item>

<label ref="jr:itext('/data/q17:option1')"/>

<value>17.2</value>

</item>

125

<item>

<label ref="jr:itext('/data/q17:option2')"/>

<value>17.3</value>

</item>

</select1>

<select ref="/data/q18">

<label ref="jr:itext('/data/q18:label')"/>

<item>

<label ref="jr:itext('/data/q18:option0')"/>

<value>18.1</value>

</item>

<item>

<label ref="jr:itext('/data/q18:option1')"/>

<value>18.2</value>

</item>

<item>

<label ref="jr:itext('/data/q18:option2')"/>

<value>18.3</value>

</item>

<item>

<label ref="jr:itext('/data/q18:option3')"/>

<value>18.4</value>

126

</item>

</select>

<select ref="/data/q18_1">

<label ref="jr:itext('/data/q18_1:label')"/>

<item>

<label ref="jr:itext('/data/q18_1:option0')"/>

<value>18.4.1</value>

</item>

<item>

<label ref="jr:itext('/data/q18_1:option1')"/>

<value>18.4.2</value>

</item>

<item>

<label ref="jr:itext('/data/q18_1:option2')"/>

<value>18.4.3</value>

</item>

<item>

<label ref="jr:itext('/data/q18_1:option3')"/>

<value>18.4.4</value>

</item>

</select>

<select1 ref="/data/q19">

127

<label ref="jr:itext('/data/q19:label')"/>

<item>

<label ref="jr:itext('/data/q19:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/q19:option1')"/>

<value>no</value>

</item>

</select1>

<select ref="/data/q19_1">

<label ref="jr:itext('/data/q19_1:label')"/>

<item>

<label ref="jr:itext('/data/q19_1:option0')"/>

<value>19.2.1</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option1')"/>

<value>19.2.2</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option2')"/>

128

<value>19.2.3</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option3')"/>

<value>19.2.4</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option4')"/>

<value>19.2.5</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option5')"/>

<value>19.2.6</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option6')"/>

<value>19.2.7</value>

</item>

<item>

<label ref="jr:itext('/data/q19_1:option7')"/>

<value>19.2.8</value>

</item>

129

</select>

<select1 ref="/data/q20">

<label ref="jr:itext('/data/q20:label')"/>

<item>

<label ref="jr:itext('/data/q20:option0')"/>

<value>yes</value>

</item>

<item>

<label ref="jr:itext('/data/q20:option1')"/>

<value>no</value>

</item>

</select1>

<select ref="/data/q21">

<label ref="jr:itext('/data/q21:label')"/>

<item>

<label ref="jr:itext('/data/q21:option0')"/>

<value>10.2.1</value>

</item>

<item>

<label ref="jr:itext('/data/q21:option1')"/>

<value>10.2.2</value>

</item>

130

<item>

<label ref="jr:itext('/data/q21:option2')"/>

<value>10.2.3</value>

</item>

<item>

<label ref="jr:itext('/data/q21:option3')"/>

<value>other</value>

</item>

</select>

<input ref="/data/q21_1">

<label ref="jr:itext('/data/q21_1:label')"/>

</input>

<input ref="/data/Localtion" appearance="maps">

<label ref="jr:itext('/data/Localtion:label')"/>

</input>

<upload ref="/data/photo_elderly" mediatype="image/*">

<label ref="jr:itext('/data/photo_elderly:label')"/>

</upload>

<upload ref="/data/photo_home" mediatype="image/*">

<label ref="jr:itext('/data/photo_home:label')"/>

</upload>

<input ref="/data/surveyer">

131

<label ref="jr:itext('/data/surveyer:label')"/>

</input>

</h:body>

</h:html>

132

แบบสอบถามทใชในการส ารวจ

133

134

135

136

ภาคผนวก ข

คมอการลงโปรแกรม ODK Aggregate และ PhpPgadmin

138

ขนตอนการตดตง Apache2 1. เปดหนาตาง Terminal ขนมา แลวพมพวา sudo apt-get install apache2 แลว Enter จากนนระบบจะให

ใสรหสผานทเราตงไว

2. เมอท าการตดตง Apacha2 เสรจเรยบรอยแลว ใหลองทดสอบ โดยการเขาไปท หรอ firefox web browser แลวพมพวา localhost จะปรากฏดงภาพ

139

ขนตอนการตดตง PHP5 1. พมพค าวา sudo apt-get install php5 libapache2-mod-php5 แลว Enter

2. ตรวจสอบ version ของ PHP โดยพมพ php -v

3. เมอตดตงเสรจเรยบรอยแลว โดยพมพ sudo medit /var/www/html/info.php ซงเปนการสรางไฟลทชอวา info.php

4. จะปรากฏหนาตาง medit ขนมา แลวพมพตามภาพ จากนน save

พมพโคดตามภาพ

140

5. เมอพมพโคดเสรจเรยบรอยแลว ใหท าการทดสอบ PHP โดยการเขาไปท หรอ firefox web browser แลวพมพวา localhost/info.php จะปรากฏดงภาพ

ขนตอนการตดตง PostgreSQL 9.3 1. พมพ sudo apt-get install postgresql-9.3 pgadmin3 แลว Enter

2. พมพ su - postgres สราง user และ pass ของ pgAdmin III โดยพมพ psql แลว Enter จากนน พมพ create role ชอ with login encrypted password ‘รหสผาน’; แลว Enter

141

3. ท าการออกจาก postgres โดยพมพ \q

4. ใหรสตารท postgresql โดยพมพ sudo service postgresql restart แลว Enter

5. เปดโปรแกรม pgAdmin III

6. คลกท Add a connection to a server หรอ

7. สราง server โดยตงคาดงน Name : PostgreSQL9.3 , Host : localhost , port : 5432 . Maintenace DB : postgres , Username : ชอ , Password : รหสผาน แลวคลก OK

142

8. จากนนจะปรากฏ server ทเราตงไว

ขนตอนการตดตง phppgadmin 1. พมพ sudo apt-get install phppgadmin แลว Enter

143

2. พมพ sudo apt-get install libpg-dev แลว Enter

3. พมพ sudo service postgresql reload แลว Enter

4. พมพ cd /var/www/html แลว Enter

5. พมพ sudo ln –s /user/share/phppgadmin phppgadmin แลว Enter

6. ลองทดสอบระบบ โดยเขาไปท หรอ firefox web browser แลวพมพวา localhost/ phppgadmin จะปรากฏดงภาพ

144

7. คลกท PostgreSQL แลวใส User และ Password แลวคลก Login

8. จะปรากฏหนาตางดงภาพ

ขนตอนการตดตง ODK 1. ท าการตดตง Java8 โดยพมพ sudo apt-get install openjdk-t-jdk

2. ตรวจสอบเวอรชนของ Java โดยพมพ jave -version

3. เปดไฟล ~/.bashrc เพอแกไขไฟล โดยพมพ sudo medit ~/.bashrc

145

4. เลอนลงไปบรรทดลางสด แลวพมพวา ##odk java

Export JAVA HOME=/usr/lib/jvm/java-7-openjdk-amd64

5. ท าการตดตง tomcat7 โดยพมพวา sudo apt-get install tomcat7 แลว enter

146

6. ไปทโฟลเดอร conf โดยพมพวา cd /var/lib/tomcat7/conf แลว enter จากนน พมพ ls เพอใชหารายการ

7. เปดไฟลเพอแกไขไฟล โดยพมพวา sudo medit context.xml

8. พมพ useHttpOnly = ‘false’ ตรง <Context>

147

9. โหลด ODK Aggregate โดยพมพวา sudo wget https://s3.amazonaws.com/opendatakit.downloads/ODK\ Aggregate\ v1.4.7\ linux-x64-installer.run แลว enter

10. พมพ sudo chmod +x ODK\ Aggregate\ v1.4.7\ linux-x64-installer.run แลว Enter

11. พมพ ./ODK\ Aggregate\ v1.4.7\ linux-x64-installer.run แลว Enter

12. ปรากฏหนาตาง setup แลวคลก Forward

148

13. เลอก I accept the agreement แลวคลก Forward

14. เลอกโฟลเดอร แลวคลก Forward

149

15. เลอก PosrgreSQL แลวคลก Forward

16. คลก Forward

150

17. คลก Forward

18. เลอก No, I do not have an SSL certificate แลวคลก Forward

151

19. ก าหนด Port : 8080 และ DNS name : localhost แลวคลก Forward

20. คลก Forward

152

21. ก าหนด database port number : 5432 และ database server hostname : localhost แลวคลก Forward

22. ก าหนด user และ password แลวคลก Forward

153

23. ก าหนดชอฐานขอมลและSchema แลวคลก Forward

24. คลก Forward

154

25. คลก Forward

26. คลก Forward

155

27. รอสกคร

28. ตดตง ODK Aggregate เสรจแลว จากนนคลก Finish

156

29. พมพ sudo su – postgres แลว Enter

30. พมพ cd ODK\ Aggregate แลว Enter

31. พมพ psql –a –f create_db_and_user.sql แลว Enter

32. พมพ exit

33. พมพ cd ODK\ Aggregate/ แลว Enter

34. พมพ sudo cp –r ODKAggregate.war /var/lib/tomcat7/wedapps/ แลว Enter

35. พมพ sudo service tomcat7 restart แลว Enter

157

36. เขาไปท หรอ firefox web browser แลวพมพวา localhost:8080/ODKAggregate/

37. คลก Log In แลวคลก Sign in with Aggregare password

38. User Name : ใสชอทตงไว และ Passwrod : aggregate แลวคลก OK

39. หนาตาง ODK Aggregare

ภาคผนวก ค

คมอการใชเวปไซตระบบฐานขอมลผสงอาย

159

คมอการใชเวปไซตระบบฐานขอมลผสงอาย

หนาเวบไซตและแถบเมน

ภาพท 30 หนาแรกของเวบไซตพรอมเมน

เมน Map

เมอคลกเขาไปจะเจอหนาลอคอนเพอเขาไปแกไขขอมล

ภาพท 31 หนา Login

160

โดยเมอลอคอนเสรจสมบรณจะสามารถเขาไป เพม ลบ อพเดท ขอมลได แตส าหรบผใชทวไปจะสามารถชมไดเพยงอยางเดยวโดยกดปม LOGIN AS GUEST เพอเขาชม

ภาพท 32 หนาแรกเมอลอคอนส าเรจ

เมน Insert

เปนเมนทใชในการเพมขอมลใหมเขาสฐานขอมลขอมลทสามารถเพมเขาไปไดเชน ID Name Longitude Latgitude และ Category

ภาพท 33 หนาส าหรบเพมขอมล

161

เมน Delete

เปนเมนทใชในการลบขอมลทมอยในฐานขอมล สามารถลบไดจากตาราง ID

ภาพท 34 หนาส าหรบลบขอมล

เมน Update

เปนเมนทใชในการแกไขขอมลทมอยในฐานขอมล สามารถแกไขไดเชน ID Name Longitude Latgitude และ Category

ภาพท 35 หนาส าหรบอพเดตขอมล

162

เมน Map

เมอคลกเขาไปจะเจอหนาลอคอนเพอเขาไปแกไขขอมล

ภาพท 36 หนาส าหรบผใชทวไป

Map Routing

เมอคลกเขาไปจะเจอหนาส าหรบหาเสนทางทใกลทสดจากบานผสงอายไปยงโรงพยาบาลหรอหนวยงานสขภาพ โดยสามารถกดทจดหนวยงานสขภาพ(จดสแดง) และจดบานผสงอาย(จดภาพคน)

ภาพท 37 หนาแผนทพรอมจดหนวยงานสขภาพและบานผสงอาย

163

โดยเมอคลก 2 จด ไดแลว Geoserver จะท าการค านวณและแสดงเสนทางทใกลทสดจาก pgRouting และเมอตองการหาเสนทางใหกดปม Clear เพอหาเสนทางใหมหรอกดปม กลบสหนาแรก เพอกลบสหนาแรก

ภาพท 38 หนาจดบานผสงอายพรอมเสนทางทใกลทสด

ภาพท 39 แถบเมนเกยวกบผสงอาย ODK pgRouting

164

เมอคลกปม Learn more ตรงแถบ Open Data Kit Application จะแสดงหนาเวบเกยวกบ ODK

ภาพท 40 หนาเพมเตมเกยวกบ ODK

เมอคลกปม Learn more ตรงแถบ About Eldery จะแสดงหนาเวบเกยวกบความหมายผสงอาย

ภาพท 41 หนาเพมเตมเกยวกบผสงอาย

165

เมอคลกปม Learn more ตรงแถบ pgRouting จะแสดงหนาเวบเกยวกบ pgRouting ซงสามารถหาความหมายหรอฝกท าการ pgRouting ดวยตวทานเอง

ภาพท 42 หนาเพมเตมเกยวกบ pgRouting

ภาพท 43 หนารวมภาพการเขาอบรม ODK

166

ภาพท 44 หนาเวบตวอยาง Heat Map

ภาคผนวก ง

โคดทใชในการพฒนาระบบ

168

โคดหนาแรกของเวปไซตระบบฐานขอมลผสงอาย ไฟล index.html

<!DOCTYPE HTML> <html> <head> <title>Elderly Database</title> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="assets/css/main.css" /> </head> <body> <header id="header" class="alt"> <div class="logo"><a href="index.html">Elderly <span>Database</span></a></div> <a href="#menu">Menu</a> </header> <nav id="menu"> <ul class="links"> <li><a href="index.html">Home</a></li> <li><a href="./Login_v1/index.html">Map</a></li> <li><a href="../pgrout.html">Map Routing</a></li> <li><a href="aboutelderly.html">Contact</a></li> </ul> </nav> <section class="banner full"> <article> <img src="images/3.jpg" alt="" /> <div class="inner"> <header> <p>Welcome to Elderly Database By <a href="https://templated.co">Danupol</a></p> <h2>Elderly Database</h2>

169

</header> </div> </article> <article> <img src="images/1.jpg" alt="" /> <div class="inner"> <header> <p>Sukhothai</p> <h2>Elderly Database</h2> </header> </div> </article> <article> <img src="images/2.jpg" alt="" /> <div class="inner"> <header> <p>Nan</p> <h2>Elderly Database</h2> </header> </div> </article> <article> <img src="images/4.jpg" alt="" /> <div class="inner"> <header> <p>Lampang</p> <h2>Elderly Database</h2> </header> </div> </article>

170

</section> <section id="one" class="wrapper style2"> <div class="inner"> <div class="grid-style"> <div> <div class="box"> <div class="image fit"> <img src="images/01.png" alt="" /> </div> <div class="content"> <header class="align-center"> <p>Elderly Database</p> <h2>Open Data Kit Application</h2> </header> <p> </p> <footer class="align-center"> <a href="https://opendatakit.org/" class="button alt">Learn More</a> </footer> </div> </div> </div> <div> <div class="box"> <div class="image fit"> <img src="images/pgrouting-logo.png" alt="" /> </div> <div class="content"> <header class="align-center"> <p>Elderly Database</p> <h2>Pgrouting </h2>

171

</header> <p> </p> <footer class="align-center"> <a href="https://pgrouting.org/" class="button alt">Learn More</a> </footer> </div> </div> </div> <div> <div class="box"> <div class="image fit"> <img src="images/3.jpg" alt="" /> </div> <div class="content"> <header class="align-center"> <p>Elderly Database</p> <h2>About Elderly</h2> </header> <p> </p> <footer class="align-center"> <a href="http://haamor.com/th/%E0%B8%9C%E0%B8%B9%E0%B9%89%E0%B8%AA%E0%B8%B9%E0%B8%87%E0%B8%AD%E0%B8%B2%E0%B8%A2%E0%B8%B8/" class="button alt">Learn More</a> </footer> </div> </div> </div> </div> </div>

172

</section> <section id="two" class="wrapper style3"> <div class="inner"> <header class="align-center"> <p>Elderly Database</p> <h2>รวมภาพในการอบรมการใชงานแอปพลเคชน ODK ในการเกบขอมล</h2> </header> </div> </section> <section id="three" class="wrapper style2"> <div class="inner"> <div class="gallery"> <div> <div class="image fit"> <a href="#"><img src="images/1.jpg" alt="" /></a> </div> </div> <div> <div class="image fit"> <a href="#"><img src="images/2.jpg" alt="" /></a> </div> </div> <div> <div class="image fit"> <a href="#"><img src="images/4.jpg" alt="" /></a> </div> </div> <div> <div class="image fit"> <a href="#"><img src="images/5.jpg" alt="" /></a> </div>

173

</div> </div> </div> </section> <section id="two" class="wrapper style3"> <div class="inner"> <header class="align-center"> <p>Elderly Database</p> <h2>Example Heatmap</h2> </header> </div> </section> <section id="three" class="wrapper style2"> <div class="inner"> <center> <iframe width="800" height="500" scrolling="no" frameborder="no" src="https://fusiontables.google.com/embedviz?q=select+col2+from+1juc1Y-D-EfVTyq8Gyf8boGb_tbbYvYFX1LBLAMe8+limit+1000&amp;viz=HEATMAP&amp;h=true&amp;lat=17.294899467903434&amp;lng=100.03935913745113&amp;t=1&amp;z=13&amp;l=col2&amp;y=2&amp;tmplt=2&amp;hmd=true&amp;hmg=%2366ff0000%2C%2393ff00ff%2C%23c1ff00ff%2C%23eeff00ff%2C%23f4e300ff%2C%23f4e300ff%2C%23f9c600ff%2C%23ffaa00ff%2C%23ff7100ff%2C%23ff3900ff%2C%23ff0000ff&amp;hmo=0.65&amp;hmr=49&amp;hmw=0&amp;hml=KML"></iframe> </center> </div> </section> <footer id="footer"> <div class="container"> <ul class="icons"> <li><a href="https://www.facebook.com/danupol23" class="icon fa-twitter"><span class="label">Twitter</span></a></li>

174

<li><a href="#" class="icon fa-facebook"><span class="label">Facebook</span></a></li> <li><a href="#" class="icon fa-instagram"><span class="label">Instagram</span></a></li> <li><a href="#" class="icon fa-envelope-o"><span class="label">Email</span></a></li> </ul> </div> <div class="copyright"> &copy; Untitled. All rights reserved. </div> </footer> <script src="assets/js/jquery.min.js"></script> <script src="assets/js/jquery.scrollex.min.js"></script> <script src="assets/js/skel.min.js"></script> <script src="assets/js/util.js"></script> <script src="assets/js/main.js"></script> </body> </html>

โคดหนาระบบการคนหาเสนทางจากบานผสงอายไปยงทหนวยงานสขภาพทใกลทสด ไฟล pgrout.html <!DOCTYPE html> <html> <head> <title>ol3 pgRouting client</title> <meta charset="utf-8"> <link href="https://openlayers.org/en/v4.6.5/css/ol.css" rel="stylesheet"> <style> #map { width: 100%; height: 800px; } </style>

175

</head> <body> <div id="map"></div> <button id="clear">clear</button> <a href="Elderly/index.html" class="btn btn-info btn-sm"><font size="5">กลบหนาเเรก</font></a> <script src="https://openlayers.org/en/v4.6.5/build/ol.js"></script> <script type="text/javascript"> /* var map = new ol.Map({ target: 'map', layers: [ new ol.layer.Tile({ source: new ol.source.OSM() }) ], view: new ol.View({ //center: ol.proj.transform([7.1192, 50.7149], 'EPSG:4326', 'EPSG:3857'), center: ol.proj.transform([100.3810, 16.8257], 'EPSG:4326', 'EPSG:3857'), zoom: 13 }), controls: ol.control.defaults({ attributionOptions: { collapsible: false } }) }); */ var map = new ol.Map({

176

target: 'map', layers: [ new ol.layer.Tile({ source: new ol.source.OSM() }), new ol.layer.Vector({ source: new ol.source.Vector({ url: 'cc/kml/point_care.kml', format: new ol.format.KML({ extractStyles: true, extractAttributes: true, maxDepth: 2 }) }) }) ], view: new ol.View({ center: ol.proj.transform([ 100.0133,17.3232], 'EPSG:4326', 'EPSG:3857'), zoom: 13 }) }); var params = { LAYERS: 'pgrouting:pgrouting', FORMAT: 'image/png' } // The "start" and "destination" features. var startPoint = new ol.Feature(); var destPoint = new ol.Feature(); // The vector layer used to display the "start" and "destination" features.

177

var vectorLayer = new ol.layer.Vector({ source: new ol.source.Vector({ features: [startPoint, destPoint] }) }); var source = new ol.source.Vector({ url: "cc/kml/point_el.kml", format: new ol.format.KML({ projection: 'EPSG:4326', extractStyles: true }) }); function styleFunction(feature) { var style = new ol.style.Style({ stroke: new ol.style.Stroke({ color: 'red', width: 9 }) }) return [style]; } var layer = new ol.layer.Vector({ source: source, style: styleFunction }); map.addLayer(layer); map.addLayer(vectorLayer); // A transform function to convert coordinates from EPSG:3857 // to EPSG:4326. var transform = ol.proj.getTransform('EPSG:3857', 'EPSG:4326'); // Register a map click listener.

178

map.on('click', function(event) { if (startPoint.getGeometry() == null) { // First click. startPoint.setGeometry(new ol.geom.Point(event.coordinate)); } else if (destPoint.getGeometry() == null) { // Second click. destPoint.setGeometry(new ol.geom.Point(event.coordinate)); // Transform the coordinates from the map projection (EPSG:3857) // to the server projection (EPSG:4326). var startCoord = transform(startPoint.getGeometry().getCoordinates()); var destCoord = transform(destPoint.getGeometry().getCoordinates()); var viewparams = [ 'x1:' + startCoord[0], 'y1:' + startCoord[1], 'x2:' + destCoord[0], 'y2:' + destCoord[1] ]; params.viewparams = viewparams.join(';'); result = new ol.layer.Image({ source: new ol.source.ImageWMS({ url: 'http://localhost:8088/geoserver/pgrouting/wms?', params: params }) }); map.addLayer(result); } }); var clearButton = document.getElementById('clear'); clearButton.addEventListener('click', function(event) { // Reset the "start" and "destination" features. startPoint.setGeometry(null); destPoint.setGeometry(null); // Remove the result layer.

179

map.removeLayer(result); }); </script> </body> </html> โคดหนา Log in ของเวปไซตระบบฐานขอมลผสงอาย ไฟล index.html <!DOCTYPE html> <html lang="en"> <head> <title>Login V1</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <!--===============================================================================================--> <link rel="icon" type="image/png" href="images/icons/favicon.ico"/> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="vendor/bootstrap/css/bootstrap.min.css"> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="fonts/font-awesome-4.7.0/css/font-awesome.min.css"> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="vendor/animate/animate.css"> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="vendor/css-hamburgers/hamburgers.min.css"> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="vendor/select2/select2.min.css"> <!--===============================================================================================--> <link rel="stylesheet" type="text/css" href="css/util.css"> <link rel="stylesheet" type="text/css" href="css/main.css"> <!--

180

===============================================================================================--> </head> <body> <div class="limiter"> <div class="container-login100"> <div class="wrap-login100"> <div class="login100-pic js-tilt" data-tilt> <img src="images/img-01.png" alt="IMG"> </div> <form action="../validate.php" method="post"> <span class="login100-form-title"> Member Login </span> <div class="wrap-input100 validate-input" data-validate = "Valid email is required: ex@abc.xyz"> <input class="input100" type="text" name="n_user" id="n_user"> <span class="focus-input100"></span> <span class="symbol-input100"> <i class="fa fa-envelope" aria-hidden="true"></i> </span> </div> <div class="wrap-input100 validate-input" data-validate = "Password is required"> <input class="input100" type="password" name="password" id="password"> <span class="focus-input100"></span> <span class="symbol-input100"> <i class="fa fa-lock" aria-hidden="true"></i> </span> </div> <div class="container-login100-form-btn"> <input class="login100-form-btn" type="submit" name="submit" value="login" /> <br /><br>&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp &nbsp <input class="login100-form-btn" type="button" name="button" id="button" value="login as guest" onclick="window.location='../cc/welcome/MapKML.php'" /> </div> </form> </div> </div> </div> <!--===============================================================================================--> <script src="vendor/jquery/jquery-3.2.1.min.js"></script> <!--===============================================================================================--> <script src="vendor/bootstrap/js/popper.js"></script> <script src="vendor/bootstrap/js/bootstrap.min.js"></script> <!--===============================================================================================--> <script src="vendor/select2/select2.min.js"></script> <!--===============================================================================================--> <script src="vendor/tilt/tilt.jquery.min.js"></script> <script > $('.js-tilt').tilt({ scale: 1.1 }) </script> <!--===============================================================================================--> <script src="js/main.js"></script> </body> </html>

โคดตรวจสอบ UsernameและPassword ของเวปไซตระบบฐานขอมลผสงอาย

181

ไฟล validate.php

<html>

<DIV align="center">

<form action="./update.php" method="post">

<?php

/* get the incoming ID and password hash */

$user_id = $_POST["n_user"];

$password = ($_POST["password"]);

/* establish a connection with the database */

$conn = pg_Connect("host='localhost'port='5432' user='user' password='user' dbname='Elderlymem'");

if (!$conn) print "Error:Could not connect to database.<br>\n";

/* SQL statement to query the database */

$result= pg_Exec($conn, "SELECT n_user,pass FROM logindanupol WHERE n_user='$user_id' and pass='$password'");

/* Allow access if a matching record was found, else deny access. */

if (pg_NumRows($result)>0) {

echo "<h3> Welcome $user_id</h3>";

echo "You can update database now";

echo "<br />";

echo "<br />";

echo '<a href="home.php"> Update now</a>';

echo "<br />";

182

echo "<br />";

echo '<a href="index.html"> Cancel and back to main page</a>';

echo "<br />";

echo "<br />";

}

else {

echo '<font color="red"><h3>Please check your User/Password again!!! if you want to edit database</h3></font><br>';

echo '<a href ="./Login_v1/index.html"><h4> Try again</h4></a>';

//echo($result);

}

?>

<?PHP

$counter_file = "counter_dbprint.txt";

//if the file doesn't exist Then we start the count at 1

if(!file_exists($counter_file)) {

exec(" echo 1 > $counter_file") ;

}

//open the counter file and read the count

$fp = fopen($counter_file, "r+");

$count = fgets($fp, 10);

$count += 1;

//overwrite the old count

183

fseek($fp, 0);

fwrite($fp, $count, 10);

fclose($fp);

?>

</TABLE>

<?PHP

//<a href="../index.html"> Back to main map</a><br><br>

//display the counter

echo "<br />";

echo "You are visitor $count to this database";

?>

</BODY>

</body>

</html>

โคดหนา เพม ลบ อพเดต ขอมลของเวปไซตระบบฐานขอมลผสงอาย ไฟล home.php <HTML> <HEAD> <TITLE> View Database Records</TITLE> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato">

184

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> </HEAD> <TABLE> <BODY class="w3-container w3-blue " align="center"> <div class="w3-top"> <div class="w3-bar w3-red w3-card w3-left-align w3-large"> <a class="w3-bar-item w3-button w3-hide-medium w3-hide-large w3-right w3-padding-large w3-hover-white w3-large w3-red" href="javascript:void(0);" onclick="myFunction()" title="Toggle Navigation Menu"><i class="fa fa-bars"></i></a> <a href="delete.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">DELETE</a> <a href="insert1.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">INSERT</a> <a href="update.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">UPDATE</a> <a href="select.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">SELECT</a> <a href="index.html" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">LOGOUT</a> </div> <center><p>Elderly MAP OF Nam pat District </P> <iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="1000" marginwidth="0" margiwidth="0" vspace="0" hspace="0" scrolling="no"></iframe> <br><br></center> </html> โคดหนาเพมขอมลของเวปไซตระบบฐานขอมลผสงอาย

185

ไฟล insert1.php <HTML> <HEAD> <TITLE> View Database Records</TITLE> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> </HEAD> <TABLE> <BODY class="w3-container w3-blue " align="center"> <div class="w3-top"> <div class="w3-bar w3-red w3-card w3-left-align w3-large"> <a class="w3-bar-item w3-button w3-hide-medium w3-hide-large w3-right w3-padding-large w3-hover-white w3-large w3-red" href="javascript:void(0);" onclick="myFunction()" title="Toggle Navigation Menu"><i class="fa fa-bars"></i></a> <a href="delete.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">DELETE</a> <a href="insert1.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">INSERT</a> <a href="update.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">UPDATE</a> <a href="select.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">SELECT</a> <a href="index.html" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">LOGOUT</a> </div> <TABLE>

186

<DIV align="center"> <P>INSERT DATABASE</P> <Table Border="1" align="center"> <TR> <TH>GID</TH> <TH>Longitude</TH> <TH>Lattitude</TH> <TH>Name</TH> <TH>Sex</TH> </TR></DIV> <center><p>Elderly MAP OF Nam pat District </P> <iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0" vspace="0" hspace="0" scrolling="no"></iframe> <br><br></center> <?PHP $db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user"); if(!$db){ echo "HONGTAE connection ERROR\n"; } else { echo "Welcome to Elderly Insert Database"; } $sql="select gid,lon,lat,gendata_na,gendata_ge from elderly ;"; $result = pg_Exec($db,$sql); $num=pg_NumRows($result); $i = 0; while ($i < $num) { echo "<TR><TD>"; echo pg_Result($result, $i, "gid"); echo "</TD><TD>"; echo pg_Result($result, $i, "lon");

187

echo "</TD><TD>"; echo pg_Result($result, $i, "lat"); echo "</TD><TD>"; echo pg_Result($result, $i, "gendata_na"); echo "</TD><TD>"; echo pg_Result($result, $i, "gendata_ge"); $i++; } pg_FreeResult($result); pg_Close($db); ?> </table> <form action ="insert2.php" method="post"> <br> <body> <div> ADD DATA !! <br><br> <table border ="1"> GID : <input type="text" name="gid" /> Lat : <input type="text" name="lon" /> Lon : <input type="text" name="lat" /><br><br> name : <input type="text" name="gendata_na" /> sex : <input type="text" name="gendata_ge" /> &nbsp; </div></body> <input type="submit" value="submit"/> </form> <br><br> <?PHP $db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

188

if(!$db){ echo "HONGTAE connection UPDATE\n"; } else { echo "Welcome Elderly to DBMS"; } ?> </html> โคดหนาดการเพมของขอมลของเวปไซตระบบฐานขอมลผสงอาย ไฟล insert2.php

<HTML> <HEAD> <TITLE> View Database Records</TITLE> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato"> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> </HEAD> <TABLE> <BODY class="w3-container w3-blue " align="center"> <?PHP $db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user"); $gid = $_POST["gid"]; $lon = $_POST["lon"]; $lat = $_POST["lat"]; $gendata_na = $_POST["gendata_na"]; $gendata_ge = $_POST["gendata_ge"]; if(!$db) { echo "An error occurred.\n"; exit;

189

} $result=pg_Exec($db, "insert into elderly(gid,lon,lat,gendata_na,gendata_ge,geom) values('$gid','$lon','$lat','$gendata_na','$gendata_ge',ST_GeomFromText('MultiPOINT($lon $lat)',4326));"); if (!$result) { echo "Can't find the data.\n"; exit; } else { echo " <center>INSERT COMPLETE!! </center>"; } pg_Close($db); ?> <BODY background="3.jpg"> <TABLE> <DIV align="center"> <P>INSERT DATABASE 2</P> <Table Border="1" align="center"> <TR> <TH>ID</TH> <TH>OFFENDER</TH> <TH>CASE</TH> <TH>AGE</TH> <TH>NATIONALITY</TH> <TH>ADDRESS</TH> <TH>LON</TH> <TH>LAT</TH> </TR> </DIV> <center><p>Elderly MAP OF Nam pat District </P>

190

<iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0" vspace="0" hspace="0" scrolling="no"></iframe> <br><br></center> <?PHP $db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user"); if(!$db){ echo "Police connection ERROR\n"; } else { echo "Welcome to Insert Elderly Database"; } $sql="select gid,lon,lat,gendata_na,gendata_ge from elderly order by gid ;"; $result = pg_Exec($db,$sql); $num=pg_NumRows($result); $i = 0; while ($i < $num) { echo "<TR><TD>"; echo pg_Result($result, $i, "gid"); echo "</TD><TD>"; echo pg_Result($result, $i, "lon"); echo "</TD><TD>"; echo pg_Result($result, $i, "lat"); echo "</TD><TD>"; echo pg_Result($result, $i, "gendata_na"); echo "</TD><TD>"; echo pg_Result($result, $i, "gendata_ge"); $i++; } pg_FreeResult($result); pg_Close($db); ?>

191

</BODY> </table> <div class="w3-top"> <div class="w3-bar w3-red w3-card w3-left-align w3-large"> <a href="insert1.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">COMEBACK TO INSERT DATA</a> </div> </div> <html>

โคดหนาลบขอมลของเวปไซตระบบฐานขอมลผสงอาย ไฟล delete.php <HTML>

<HEAD>

<TITLE> View Database Records</TITLE>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

</HEAD>

<TABLE>

<BODY class="w3-container w3-blue " align="center">

<div class="w3-top">

192

<div class="w3-bar w3-red w3-card w3-left-align w3-large">

<a class="w3-bar-item w3-button w3-hide-medium w3-hide-large w3-right w3-padding-large w3-hover-white w3-large w3-red" href="javascript:void(0);" onclick="myFunction()" title="Toggle Navigation Menu"><i class="fa fa-bars"></i></a>

<a href="delete.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">DELETE</a>

<a href="insert1.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">INSERT</a>

<a href="update.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">UPDATE</a>

<a href="select.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">SELECT</a>

<a href="index.html" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">LOGOUT</a>

</div>

<TABLE>

<DIV align="center">

<P>DELETE DATABASE</P>

<Table Border="1" align="center">

<TR>

<TH>GID</TH>

<TH>Longitude</TH>

<TH>Lattitude</TH>

<TH>Name</TH>

193

<TH>Sex</TH>

</TR></DIV>

<center><p>Elderly MAP OF Nampat District </P>

<iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0"

vspace="0" hspace="0" scrolling="no"></iframe>

<br><br></center>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Police connection ERROR\n"; }

else {

echo "Welcome to Elderly Delete Database";

}

$sql="select gid,lon,lat,gendata_na,gendata_ge from elderly;";

$result = pg_Exec($db,$sql);

$num=pg_NumRows($result);

$i = 0;

while ($i < $num) {

echo "<TR><TD>";

echo pg_Result($result, $i, "gid");

echo "</TD><TD>";

echo pg_Result($result, $i, "lon");

194

echo "</TD><TD>";

echo pg_Result($result, $i, "lat");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_na");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_ge");

$i++;

}

pg_FreeResult($result);

pg_Close($db);

?>

</table>

<form action ="delete1.php" method="post">

<br>

<body>

<div>

DELETE DATA!! <br><br>

<table border ="1">

GID : <input type="text" name="gid" /> <br><br>

&nbsp;

</div></body>

<input type="submit" value="submit"/>

195

</form>

<br><br>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Police connection Delete\n"; }

else {

echo "Welcome to Elderly Delete Database";

}

?>

</html>

โคดหนาดการลบของขอมลของเวปไซตระบบฐานขอมลผสงอาย ไฟล delete1.php

<HTML>

<HEAD>

<TITLE> View Database Records</TITLE>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato">

196

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

</HEAD>

<TABLE>

<BODY background="3.jpg" align="center">

<HEAD>

<meta charset="UTF-8">

</HEAD>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

$gid = $_POST["gid"];

$lon = $_POST["lon"];

$lat = $_POST["lat"];

$gendata_na = $_POST["gendata_na"];

$gendata_ge = $_POST["gendata_ge"];

if(!$db) {

echo "An error occurred.\n";

exit;

}

$result=pg_Exec($db,

"delete from elderly where gid='$gid';" );

if (!$result) {

197

echo "Can't find the data.\n";

exit;

}

else {

echo " <center>Delete ส าเรจ! </center>";

}

pg_Close($db);

?>

<BODY class="w3-container w3-red " align="center">

<TABLE>

<DIV align="center">

<P>DELETE DATABASE 2</P>

<Table Border="1" align="center">

<TR>

<TH>GID</TH>

<TH>Longitude</TH>

<TH>Lattitude</TH>

<TH>Name</TH>

<TH>Sex</TH>

</TR>

</DIV>

198

<center><p>Elderly MAP OF Nampat District </P>

<iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0"

vspace="0" hspace="0" scrolling="no"></iframe>

<br><br></center>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Elderly connection ERROR\n"; }

else {

echo "Welcome to Elderly Delete Database";

}

$sql="select gid,lon,lat,gendata_na,gendata_ge from elderly

;";

$result = pg_Exec($db,$sql);

$num=pg_NumRows($result);

$i = 0;

while ($i < $num) {

echo "<TR><TD>";

echo pg_Result($result, $i, "gid");

echo "</TD><TD>";

199

echo pg_Result($result, $i, "lon");

echo "</TD><TD>";

echo pg_Result($result, $i, "lat");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_na");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_ge");

$i++;

}

pg_FreeResult($result);

pg_Close($db);

?>

</BODY>

</table>

<br><br>

<div class="w3-top">

<div class="w3-bar w3-red w3-card w3-left-align w3-large">

<a href="delete.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">COMEBACK TO DELETE DATA</a>

</div> </div>

</html>

โคดหนาอพเดตขอมลของเวปไซตระบบฐานขอมลผสงอาย

200

ไฟล update.php

<HTML>

<HEAD>

<TITLE> View Database Records</TITLE>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat">

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

</HEAD>

<TABLE>

<BODY class="w3-container w3-blue " align="center">

<div class="w3-top">

<div class="w3-bar w3-red w3-card w3-left-align w3-large">

<a class="w3-bar-item w3-button w3-hide-medium w3-hide-large w3-right w3-padding-large w3-hover-white w3-large w3-red" href="javascript:void(0);" onclick="myFunction()" title="Toggle Navigation Menu"><i class="fa fa-bars"></i></a>

<a href="delete.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">DELETE</a>

201

<a href="insert1.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">INSERT</a>

<a href="update.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">UPDATE</a>

<a href="select.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">SELECT</a>

<a href="index.html" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">LOGOUT</a>

</div>

<TABLE>

<DIV align="center">

<P>INSERT DATABASE</P>

<Table Border="1" align="center">

<TR>

<TH>GID</TH>

<TH>Longitude</TH>

<TH>Lattitude</TH>

<TH>Name</TH>

<TH>Sex</TH>

</TR></DIV>

<center><p>Elderly MAP OF Nampat District </P>

202

<iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0"

vspace="0" hspace="0" scrolling="no"></iframe>

<br><br></center>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Police connection ERROR\n"; }

else {

echo "Welcome to Elderly Update Database"; }

$sql="select gid,lon,lat,gendata_na,gendata_ge from elderly

;";

$result = pg_Exec($db,$sql);

$num=pg_NumRows($result);

$i = 0;

while ($i < $num) {

echo "<TR><TD>";

echo pg_Result($result, $i, "gid");

echo "</TD><TD>";

echo pg_Result($result, $i, "lon");

echo "</TD><TD>";

echo pg_Result($result, $i, "lat");

echo "</TD><TD>";

203

echo pg_Result($result, $i, "gendata_na");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_ge");

$i++;

}

pg_FreeResult($result);

pg_Close($db);

?>

</table>

<form action ="update1.php" method="post">

<br>

<body>

<div>

UPDATE DATA !! <br><br>

<table border ="1">

GID : <input type="text" name="gid" />

Lat : <input type="text" name="lon" />

Lon : <input type="text" name="lat" /><br><br>

name : <input type="text" name="gendata_na" />

sex : <input type="text" name="gendata_ge" />

&nbsp;

</div></body>

204

<input type="submit" value="submit"/>

</form>

<br><br>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Police connection UPDATE\n"; }

else {

echo "Welcome to Elderly Update Database";

}

?>

</html>

โคดหนาการอพเดตของขอมลของเวบไซตระบบฐานขอมลผสงอาย ไฟล update1.php

<HTML>

<HEAD>

<TITLE> View Database Records</TITLE>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato">

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat">

205

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

</HEAD>

<TABLE>

<BODY background="3.jpg" align="center">

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

$gid = $_POST["gid"];

$lon = $_POST["lon"];

$lat = $_POST["lat"];

$gendata_na = $_POST["gendata_na"];

$gendata_ge = $_POST["gendata_ge"];

if(!$db) {

echo "An error occurred.\n";

exit;

}

$result=pg_Exec($db,

"update elderly set gendata_na='$gendata_na' ,lon='$lon',lat='$lat' ,gendata_ge='$gendata_ge',geom = ST_GeomFromText('MultiPOINT($lon $lat)',4326 ) WHERE gid='$gid';");

if (!$result) {

echo "Can't find the data.\n";

206

exit;

}

else {

echo " <center>UPDATE COMPLETE!! </center>";

}

pg_Close($db);

?>

<BODY class="w3-container w3-red " align="center">

<TABLE>

<DIV align="center">

<P>UPDATE DATABASE 2</P>

<Table Border="1" align="center">

<TR>

<TH>GID</TH>

<TH>Longitude</TH>

<TH>Lattitude</TH>

<TH>Name</TH>

<TH>Sex</TH>

</TR>

</DIV>

207

<center><p>DRUG MAP OF AMPHOE MUEANG PHITSANULOK </P>

<iframe src="http://localhost/heron-1.0.6/examples/googlemaps/" width="1880" height="550" marginwidth="0" margiwidth="0"

vspace="0" hspace="0" scrolling="no"></iframe>

<br><br></center>

<?PHP

$db = pg_connect("host=localhost dbname=ims port=5432 user=user password=user");

if(!$db){

echo "Elderly connection ERROR\n"; }

else {

echo "Welcome to Elderly Update Database";

}

$sql="select gid,lon,lat,gendata_na,gendata_ge from elderly

order by gid;";

$result = pg_Exec($db,$sql);

$num=pg_NumRows($result);

$i = 0;

while ($i < $num) {

echo "<TR><TD>";

echo pg_Result($result, $i, "gid");

208

echo "</TD><TD>";

echo pg_Result($result, $i, "lon");

echo "</TD><TD>";

echo pg_Result($result, $i, "lat");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_na");

echo "</TD><TD>";

echo pg_Result($result, $i, "gendata_ge");

$i++;

}

pg_FreeResult($result);

pg_Close($db);

?>

</BODY>

</table>

<div class="w3-top">

<div class="w3-bar w3-red w3-card w3-left-align w3-large">

<a href="update.php" class="w3-bar-item w3-button w3-hide-small w3-padding-large w3-hover-white">COMEBACK TO UPDATE DATA</a>

</div> </div>

</html>

โคดหนาขอมลจดบานผสงอายของเวบไซตระบบฐานขอมลผสงอายส าหรบผใชทวไป

209

ไฟล MapKml.php

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="cs" lang="cs">

<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

<meta http-equiv="content-language" content="cs" />

<meta name="author" lang="cs" content="David Kohout; http://www.davidkohout.cz" />

<meta name="copyright" lang="cs" content="David Kohout; http://www.davidkohout.cz" />

<meta name="description" content="..." />

<meta name="keywords" content="..." />

<meta name="robots" content="all,follow" />

<link href="../css/screen.css" type="text/css" rel="stylesheet" media="screen,projection" />

<link href="../css/print.css" type="text/css" rel="stylesheet" media="print" />

<link rel="stylesheet" href="../css/jquery.treeview.css" />

<link rel="stylesheet" href="../css/lightbox.css" type="text/css" media="all">

<script src="../js/jquery.min.js" type="text/javascript"></script><!--/1.3.2/jquery.min.js-->

<script src="../js/cufon.js" type="text/javascript"></script>

<script src="../js/cufon-config.js" type="text/javascript"></script>

<script src="../js/font.js" type="text/javascript"></script>

<script src="../js/jquery.treeview.js" type="text/javascript"></script>

<script type="text/javascript" src="../js/demo.js"></script>

210

<script type="text/javascript" src="../js/lightbox.js"></script>

<!-- Scripts go here -->

<script src="http://www.openlayers.org/api/OpenLayers.js"></script>

<script src="http://maps.google.com/maps/api/js?sensor=false" type="text/javascript"></script>

<title>KMLMAP</title>

</head>

<body>

<div class="wrap container2 clearfix">

<div class="content2" height="100%">

<h1><font face="thai_sans_literegular">KMLMAP</font></h1>

<div id='mapdiv'></div>

<script>

map = new OpenLayers.Map("mapdiv");

map.addLayer(new OpenLayers.Layer.OSM("OpenStreetMap"));

var lonLat = new OpenLayers.LonLat( 100.1279688 ,13.8077286 ).transform(

new OpenLayers.Projection("EPSG:4326"), // transform from WGS 1984

map.getProjectionObject() // to Spherical Mercator Projection

);

var zoom=6;

map.setCenter (lonLat, zoom);

211

//

var layer1 = new OpenLayers.Layer.Vector("KML", {

strategies: [new OpenLayers.Strategy.Fixed()],

protocol: new OpenLayers.Protocol.HTTP({

url: "../kml/point_el.kml",

format: new OpenLayers.Format.KML({

extractStyles: true,

extractAttributes: true,

maxDepth: 2

})

})

}); // kml 1

map.addLayer(layer1);

select = new OpenLayers.Control.SelectFeature(layer1);

layer1.events.on({

"featureselected": onFeatureSelect,

"featureunselected": onFeatureUnselect

});

map.addControl(select);

select.activate();

//map.zoomToExtent(new OpenLayers.Bounds(90.774414,11.381836,120.662109,14.628906));

212

function onPopupClose(evt) {

select.unselectAll();

}

function onFeatureSelect(event) {

var feature = event.feature;

// Since KML is user-generated, do naive protection against

// Javascript.

var content = "<h2>"+feature.attributes.name + "</h2>" + feature.attributes.description;

if (content.search("<script") != -1) {

content = "Content contained Javascript! Escaped content below.<br>" + content.replace(/</g, "&lt;");

}

popup = new OpenLayers.Popup.FramedCloud("chicken",

feature.geometry.getBounds().getCenterLonLat(),

new OpenLayers.Size(100,100),

content,

null, true, onPopupClose);

feature.popup = popup;

map.addPopup(popup);

}

function onFeatureUnselect(event) {

var feature = event.feature;

if(feature.popup) {

213

map.removePopup(feature.popup);

feature.popup.destroy();

delete feature.popup;

}

}

</script>

</div>

<div class="sidebar">

<h3><thais>MapKML</thais></h3>

<div class="box">

<div class="in">

<ul>

ปจจบนสมารทโฟนถอเปนสงส าคญในชวตมนษยและการเกบขอมลตางๆดวยแบบสอบถามดวยแอปพลเคชน ODK จงเปนเรองใหมส าหรบหนวยงานตางๆทตองเกบขอมลจากทตองน าขอมลจากแบบสอบถามมาเขา Microsoft Excel แลวสงตอใหเจาหนาทน าขอมลเขา Database เพยงแคมแอปพลเคชนนกสามารถเกบขอมลโดยทสงไปทเครองแมขายละโชวขอมลผานเวบไดละยงสามารถโหลดขอมลจากแบบสอบถามขางตนมาเปนไฟล Microsoft Excel ไดอกดวยจากขางตนหนวยงานตางๆสามารถใชประโยชนจากขอมลในเครองแมขายมาวเคราะหเสนทางการชวยเหลอผสงอายทใกลทสดส าหรบหนวยงานดานสขภาพวเคราะหการกระจายตวของโรคตางๆในแตละหมบานเปนภาพส iDW และสบคนแกไขขอมลไดงาย โดย Mini Project นจะเปนการแสดงหนาเวบเบองตนกอนน าไปใสเพมในงานวจย

</ul>

</div> <!-- / in>-->

</div> <!-- / box>-->

</div>

214

</div>

<hr class="noscreen" />

<div id="header">

<div class="wrap">

<!-- Logo start

<a id="logo" href="./" title="nature">C-C-Project<span></span></a>

Logo end -->

<hr class="noscreen noprint" />

<br><br><br><br><br><br><br><br><br>

<!-- Navigation start -->

<strong class="noscreen noprint">Navigation:</strong>

<ul id="nav"><br><br><br>

<li><a href="../../index.html" title="Home"><font face="thai_sans_literegular" size = 4px color="black">Home</font></a></li>

<li><a href="../../Login_v1/index.html" title="C-C-Project"><font face="thai_sans_literegular" size = 4px color="black">Map</font></a></li>

<li><a href="../../aboutelderly.html" title="C-C-Project"><font face="thai_sans_literegular" size = 4px color="black">Contact</font></a></li>

</ul>

<!-- Navigation end -->

</div>

</div>

215

<hr class="noscreen" />

</body>

</body>

</html>

โคดหนาขอมลผพฒนาระบบฐานขอมลผสงอายส าหรบผใชทวไป ไฟล aboutelderly.html

<!DOCTYPE HTML>

<html>

<head>

<title>About Elderly Database</title>

<meta charset="utf-8" />

<meta name="viewport" content="width=device-width, initial-scale=1" />

<link rel="stylesheet" href="assets/css/main.css" />

</head>

<body class="subpage">

<!-- Header -->

<header id="header">

<div class="logo"><a href="index.html">Elderly Database <span>by Pluem</span></a></div>

<a href="#menu">Menu</a>

</header>

<!-- Nav -->

216

<nav id="menu">

<ul class="links">

<li><a href="index.html">Home</a></li>

<li><a href="./Login_v1/index.html">Map</a></li>

<li><a href="aboutelderly.html">Contact</a></li>

</ul>

</nav>

<!-- One -->

<section id="One" class="wrapper style3">

<div class="inner">

<header class="align-center">

<p>Elderly Database</p>

<h2>About Elderly Database</h2>

</header>

</div>

</section>

<!-- Two -->

<section id="two" class="wrapper style2">

<div class="wrapper-row wrapper-expand">

<section id="content" class="container">

<div class="col grid12 textcenter">

<span></span>

217

</div>

<h2>ทมาและความส าคญของงานวจย</h2>

<p>ปจจบนสมารทโฟนถอเปนสงส าคญในชวตมนษยและการเกบขอมลตางๆดวยแบบสอบถามดวยแอปพลเคชน ODK จงเปนเรองใหมส าหรบหนวยงานตางๆทตองเกบขอมลจากทตองน าขอมลจากแบบสอบถามมาเขา Microsoft Excel แลวสงตอใหเจาหนาทน าขอมลเขา Database เพยงแคมแอปพลเคชนนกสามารถเกบขอมลโดยทสงไปทเครองแมขายละโชวขอมลผานเวบไดละยงสามารถโหลดขอมลจากแบบสอบถามขางตนมาเปนไฟล Microsoft Excel ไดอกดวยจากขางตนหนวยงานตางๆสามารถใชประโยชนจากขอมลในเครองแมขายมาวเคราะหเสนทางการชวยเหลอผสงอายทใกลทสดส าหรบหนวยงานดานสขภาพวเคราะหการกระจายตวของโรคตางๆในแตละหมบาน

</p>

<div class="col grid12 features textcenter">

<div class="sep"><span></span></div>

<h2 class="textcenter">Developer by</h2>

<div class="col alpha grid4">

<h3>นายดนพล นาสงคาร</h3>

<a href="https://www.facebook.com/nopparatkik" target="_blank"><img src="images/pluem.jpg" width="150px" height="150px"></a><br><br>

<p class="small">ผพฒนาระบบ นสตชนปท 4 สาขาวชาภมศาสตร <br>E-mail : daupoln58@email.nu.ac.th</p>

</div>

<div class="col grid4">

<h3>ผศ.ดร.สทธชย ชส าโรง</h3>

<a href="https://www.facebook.com/b.naytawan" target="_blank"><img src="images/ajbomp.jpg" width="150px" height="150px"></a><br><br>

218

<p class="small">อาจารยทปรกษาวทยานพนธระดบปรญญาตรและรวมพฒนาระบบ<br>E-mail : sittichaic@nu.ac.th</p>

</div>

<div class="col omega grid4">

<h3>มหาวทยาลยนเรศวร</h3>

<img src="images/nu_logo.png" width="150px" height="150px"><br><br>

</div>

</div>

<!-- Footer -->

<footer id="footer">

<div class="container">

<ul class="icons">

<li><a href="#" class="icon fa-twitter"><span class="label">Twitter</span></a></li>

<li><a href="#" class="icon fa-facebook"><span class="label">Facebook</span></a></li>

<li><a href="#" class="icon fa-instagram"><span class="label">Instagram</span></a></li>

<li><a href="#" class="icon fa-envelope-o"><span class="label">Email</span></a></li>

</ul>

</div>

219

<div class="copyright">

&copy; Untitled. All rights reserved.

</div>

</footer>

<!-- Scripts -->

<script src="assets/js/jquery.min.js"></script>

<script src="assets/js/jquery.scrollex.min.js"></script>

<script src="assets/js/skel.min.js"></script>

<script src="assets/js/util.js"></script>

<script src="assets/js/main.js"></script>

</body>

</html>

ประวตผวจย

222

ประวตผวจย

ชอ – สกล ดนพล นาสงคาร วน เดอน ปเกด 23 มนาคม 2539 ทอยปจจบน 283/1 หม 2 ต าบลทาโรง อ าเภอวเชยรบร จงหวดเพชรบรณ 67130 ประวตการศกษา พ.ศ.2558-ปจจบน วท.บ (ภมศำสตร) มหำวทยำลยนเรศวร เกรดเฉลย 2.52

พ.ศ.2552-2557 ระดบมธยมศกษำ (วทย-คณต) โรงเรยนนยมศลปอนสรณ

ต าบลทาโรง อ าเภอวเชยรบร จงหวดเพชรบรณ เกรดเฉลย 2.75

พ.ศ.2546-2551 ระดบประถมศกษำ โรงเรยนอนบำลกำญจนำวทยำ ต าบลทาโรง อ าเภอวเชยรบร

จงหวดเพชรบรณ กจกรรมทเขารวม เขารวมอบรมในรายวชาโฟโตแกรมเมตร (104331) ของ ดร.นฐพล มหาวค ภาคการศกษาท1 ป การศกษา 2559 ระหวางวนท 29-30 ตลาคม 2559 ณ คณะเกษตรศาสตร ทรพยากรธรรมชาต และสงแวดลอม มหาวทยาลยนเรศวร

เปนคณะผจดกจกรรม “คายสานสมพนธภมศาสตร” ระหวางวนท 24-26 กมภาพนธ 2561 ณ อทยานภ หนรองกลา จงหวดพษณโลก

อบรมการพฒนาระบบฐานขอมลผสงอายเพอรองรบการเปลยนแปลงและตดตามการดแลดวยระบบ GIS ระหวางวนท 8-9 เมษายน 2561 ณ จงหวดอตรดตถ

อบรมการจดท าระบบฐานขอมลภาคสนามแบบเรยลไทมบนระบบแผนทออนไลน ระหวางวนท 20-21 เมษายน 2561 ณ โรงแรมดอมเพรสนาน จงหวดนาน

รงวดพนท วนท 28 พฤษภาคม 2561 ณ อ าเภอวงทอง จงหวดพษณโลก อบรมการจดท าระบบฐานขอมลภาคสนามแบบเรยลไทมบนระบบแผนทออนไลน ระหวางวนท 7-8

มถนายน 2561 ณ โรงแรมนวรตน จงหวดก าแพงเพชร ดทฝกงาน 16-17 กค โครงการฝกอบรมหลกสตรการจดท าแผนทและขอมลถนนทางหลวงทองถน ส าหรบบคลากรของกรมทาง

หลวงชนบท ระหวางวนท 17-19 กรกฏาคม 2561 ณ มหาวทยาลยราชภฎพระนคร โครงการฝกอบรมหลกสตรการจดท าแผนทและขอมลถนนทางหลวงทองถน ส าหรบบคลากรของกรมทาง

หลวงชนบท วนท 2 สงหาคม 2561 ณ มหาวทยาลยนเรศวร โครงการฝกอบรมหลกสตรการจดท าแผนทและขอมลถนนทางหลวงทองถน ส าหรบบคลากรของกรมทาง

หลวงชนบท ระหวางวนท 15-16 สงหาคม 2561 ณ มหาวทยาลยราชภฏสวนดสตนครนายก

223

พธไหวครและสวมงอบประจ าปการศกษา 2561 วนท 13 กนยายน 2561 ณ อาคารขวญเมอง มหาวทยาลยนเรศวร

โครงการปรบปรงชนขอมลภมสารสนเทศของหนวยงาน (ขอมล FGDS) ใหเปนไปตามขอก าหนดของมาตรฐาน FGDS (26 จงหวด) ระหวางวนท 9-10 ตลาคม 2561 ณ ศาลากลางจงหวดพจตร

โครงการฝกอบรมหลกสตรการจดท าแผนทและขอมลถนนทางหลวงทองถน ส าหรบบคลากรของกรมทางหลวงชนบท ระหวางวนท 10-13 ธนวาคม 2561 ณ มหาวทยาลยบรพา ผลงานตพมพ Danupol Nasingkarn and Sittichai Choosumrong .(2018). Elderly database design for emergency

routing plan using Open Data Kit and pgRouting. “International Conference on GeoInformatics for Spatial-Infrastructure Development in Earth & Allied Sciences”, On

November 22-25, 2018 at the Can Tho University,Vietnam

Recommended