Upload
others
View
1
Download
0
Embed Size (px)
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>>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(., "^.{13,13}$"))" 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&viz=HEATMAP&h=true&lat=17.294899467903434&lng=100.03935913745113&t=1&z=13&l=col2&y=2&tmplt=2&hmd=true&hmg=%2366ff0000%2C%2393ff00ff%2C%23c1ff00ff%2C%23eeff00ff%2C%23f4e300ff%2C%23f4e300ff%2C%23f9c600ff%2C%23ffaa00ff%2C%23ff7100ff%2C%23ff3900ff%2C%23ff0000ff&hmo=0.65&hmr=49&hmw=0&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"> © 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: [email protected]"> <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>               <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" /> </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>
</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" />
</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, "<");
}
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 : [email protected]</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 : [email protected]</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">
© 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