Advertisement
Guest User

Untitled

a guest
Jul 31st, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.11 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang='en'>
  3. <?php
  4. $conn_string = "host=localhost dbname=postgis_21 user=postgres password=1234";
  5. $dbconn4 = pg_connect($conn_string);
  6. //$result = pg_exec();
  7. $rs = pg_query("select ST_AsText(geom) from pak_adm2_pco_20110324");
  8. $row = pg_fetch_array($rs, 0, PGSQL_NUM);
  9. print_r($row[0]);
  10. ?>
  11. <head>
  12. <meta charset='utf-8' />
  13. <script type='text/javascript' src='OpenLayers.js'></script>
  14. <?php /*<script
  15. src="http://api.maps.yahoo.com/ajaxymap?v=3.0&appid=euzuroopenlayers"></script>
  16. <script
  17. src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.
  18. ashx?v=6.2&mkt=en-us"></script> */?>
  19. <script type='text/javascript'>
  20.  
  21. var map;
  22.  
  23. function init() {
  24.  
  25. map = new OpenLayers.Map('map_element',{
  26. //projection: 'EPSG:900913',
  27. projection: new OpenLayers.Projection("EPSG:900913"),
  28. displayProjection: new OpenLayers.Projection("EPSG:4326"),
  29. maxExtent: new OpenLayers.Bounds(-20037508, -20037508,
  30. 20037508, 20037508.34),
  31. maxResolution: 156543.0339,
  32. units: 'm'
  33. });
  34.  
  35. //Create a base layer
  36. var wms_layer = new OpenLayers.Layer.WMS(
  37. 'WMS Layer Title',
  38. 'http://vmap0.tiles.osgeo.org/wms/vmap0',
  39. {layers: 'basic'},
  40. {}
  41. );
  42. var wms_layer_labels = new OpenLayers.Layer.WMS(
  43. 'Location Labels',
  44. 'http://vmap0.tiles.osgeo.org/wms/vmap0',
  45. {layers: 'clabel,ctylabel,statelabel',
  46. transparent: true},
  47. {opacity: .5}
  48. );
  49.  
  50. map.addControl(new OpenLayers.Control.LayerSwitcher());
  51. var vector_layer = new OpenLayers.Layer.Vector('More Advanced Vector Layer');
  52.  
  53. map.addControl(new OpenLayers.Control.LayerSwitcher());
  54. map.addControl(new OpenLayers.Control.MousePosition());
  55. parser = new OpenLayers.Format.WKT();
  56. var vector_layer1 = new OpenLayers.Layer.Vector('Basic Vector Layer');
  57. var point = new OpenLayers.Geometry.Point(-72, 42);
  58. var feature_point = new OpenLayers.Feature.Vector(point);
  59. vector_layer.addFeatures([feature_point]);
  60. map.addLayers([wms_layer, vector_layer1, vector_layer,wms_layer_labels]);
  61.  
  62. <?php if(isset($row))
  63. {
  64. while($row = pg_fetch_array($row, 0, PGSQL_BOTH)){?>
  65. var wkt = "<?php echo $data['geom'];?>";
  66. var geometry = parser.read(wkt);
  67. geometry.geometry.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
  68. vector_layer.addFeatures([geometry]);
  69. <?php } } ?>
  70.  
  71. map.addControl(new OpenLayers.Control.EditingToolbar(vector_layer));
  72. if(!map.getCenter()){
  73. map.zoomToMaxExtent();
  74. }
  75. }
  76. </script>
  77. </head>
  78. <body onload='init();'>
  79. <div id='map_element' style='width: 1000px; height: 800px;'></div>
  80. </body>
  81. </html>
  82.  
  83. Create Map Client Side -->
  84. Browser Displays the Map -->
  85. OpenLayers requests data from Server via AJAX -->
  86. Server queries the database -->
  87. Server formats data as KML, GeoJson or similar -->
  88. Sever responds to AJAX call with requested data -->
  89. OpenLayers Vector Layer Displays the data
  90.  
  91. var vectorlayer = new OpenLayers.Layer.Vector(
  92. "MyLayer",
  93. {
  94. strategies: [new OpenLayers.Strategy.Fixed()],
  95. styleMap: new OpenLayers.StyleMap(styletouse),
  96. projection: wgs84,
  97. attribution: attribution,
  98.  
  99. protocol: new OpenLayers.Protocol.HTTP
  100. ({
  101. url: "http://ajax.mydomain.com",
  102. format: new OpenLayers.Format.KML
  103. ({
  104. // extractStyles: true,
  105. // extractTracks: true,
  106. extractAttributes: true,
  107. maxDepth: 2
  108. }),
  109.  
  110. }),
  111. visibility: true
  112. });
  113.  
  114.  
  115. map.addLayers([vectorlayer]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement