ใช้งาน AppforMap กับ Map file ของเราเอง

Standard

วันนี้ก็จะมาต่อกันอีกสำหรับ AppforMap เอาว่าย้ายกันมาให้ได้เลย

ก็ไม่มีไรมาก ต้องทำการแก้ไขไฟล์ส่วนใหญ่ที่อยู่ AppforMap/conf/
ซึ่งประกอบไปด้วยไฟล์ดังนี้

maplinkconfig.conf,refmapconfig.conf,browserconfig.xml และ load_modules.php

1.maplinkconfig.conf

ให้ทำการแก้ไขค่า ดังนี้

$workingDir=”C:/ms4w/tmp/ms_tmp/”;//path to the map image. Better use absolute url, because mapscript module change the workingdir
$imageUrl=”http://localhost/ms_tmp/”;//url to the map image.

if (!$mapfileUrl) $mapfileUrl=”C:/ms4w/apache/htdocs/librarymap/mapfile/library_app.map”;

if (!$layerXml) $layerXml=”http://localhost/appformap2/conf/browserconfig.xml?”;

และอาจต้องมีการปรับเปลี่ยนบ้างในกรณีหากมีการใช้ PostGIS อีกทั้งหน้าตา เมนูต่าง ๆ ให้สำรวจดูว่ามีอะไรที่ให้แสดงไว้บ้าง

2.refmapconfig.conf

แก้ไขทุกค่า ของมันเลยก็ว่าได้ เพราะมัีนมีอยู่แค่ 4 ตัว

3. browserconfig.xml

อันนี้เป็นไฟล์เพื่อแสดง ตัวบังคับการเปิดปิด layer ซึ่งอาจไม่ต้องมีจำนวนเท่ากันกับใน map file ก็ได้
หลักก็มีค่าของ

Title ซึ่งเป็นชื่อที่จะแสดง
Name และ Table ต้องตรงกับชื่อ layer ใน mapfile
Abstract ใช้คำอธิบายเยอะ ๆ ลงไปได้

4. load_modules.php
อาจต้องทำการแก้ไขบ้างในการ load module ของ php โดยเฉพาะเมื่อใช้กับ linux OS.

มาสำหรับขั้นสูงขึ้นในการใ้ช้ PostGIS และใช้ client_classic.phtml ที่ทำการ ค้นหาจุดได้นั้นต้องทำการแก้ไขเพิ่มเติมในไฟล์ search_select.php

ต้องทำการเปลี่ยน ตัวแปรที่เกี่ยวกับการ query มีค่าเหมือนกันกับชื่อ Select tag และ Option tag

และปรับเปลี่ยน SQL query command ให้สามารถดึงข้อมูลมาได้

ส่วนรายละเอียดให้ใช้งานได้อย่างเต็มที่ยังมีรายละเอียดอีกมากมาย โดยจะเอาตัวอย่าง มา post ไว้เต็มเลยดีกว่าเนอะ

แต่มี bug อยู่หนึ่งอย่างในไฟล์ function.php ซึ่งจะมีผลกับ postgis > 1.0 ขึ้นไปโดยจะเ้ข้มงวดกับการแบ่งแยก พิกัดมากขึ้น

จะเห็นว่ามันไม่มี

,

ระหว่างค่าพิกัดหายไปซึ่งใน version 0.8 นั้นจะยอมให้ใช้งานได้จึงต้องทำการแก้ไข code ที่ราว ๆ บรรทัด 2031 จาก

$NewPointArray = $NewPointArray.$geominx.” “.$geominy;

and replace it with;

$NewPointArray = $NewPointArray.”,”.$geominx.” “.$geominy;

เสร้จแหละนะคร้าบบ

เห่อ วันนี้ทำงานได้เยอะ มาก ๆ เลย สงสัยได้รับทราบเค้าดีว่าจะได้กลับไทยและบี visa ผ่านแหละ