Advertisement
Guest User

Untitled

a guest
May 23rd, 2016
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. var map,
  2. fields = ["gid", "createdby", "featname", "feattype", "status", "acres"],
  3. autocomplete = [];
  4. function getData(){
  5. $.ajax("php/getData.php", {
  6. data: {
  7. table: "fracsandsites",
  8. fields: fields
  9. },
  10. success: function(data){
  11. mapData(data);
  12. }
  13. })
  14.  
  15. <?php
  16. ini_set('display_errors', 1);
  17.  
  18. //database login info
  19. $host = 'localhost';
  20. $port = '5432';
  21. $dbname = 'sandwikimap2';
  22. $user = 'postgres';
  23. $password = 'postgis';
  24.  
  25. $conn = pg_connect("host=$host port=$port dbname=$dbname user=$user password=$password");
  26. if (!$conn) {
  27. echo "Not connected : " . pg_error();
  28. exit;
  29. }
  30.  
  31. //get the table and fields data
  32. $table = $_GET['table'];
  33. $fields = $_GET['fields'];
  34.  
  35. //turn fields array into formatted string
  36. $fieldstr = "";
  37. foreach ($fields as $i => $field){
  38. $fieldstr = $fieldstr . "l.$field, ";
  39. }
  40.  
  41. //get the geometry as geojson in WGS84
  42. $fieldstr = $fieldstr . "ST_AsGeoJSON(ST_Transform(l.geom,4326))";
  43.  
  44. //create basic sql statement
  45. $sql = "SELECT $fieldstr FROM $table l";
  46.  
  47. //if a query, add those to the sql statement
  48. if (isset($_GET['featname'])){
  49. $featname = $_GET['featname'];
  50. $distance = $_GET['distance'] * 1000; //change km to meters
  51.  
  52. //join for spatial query - table geom is in EPSG:26916
  53. $sql = $sql . " LEFT JOIN $table r ON ST_DWithin(l.geom, r.geom, $distance) WHERE r.featname = '$featname';";
  54. }
  55.  
  56. var map = L.map('map',{ center: [42.589, -111.99], zoom: 14});
  57. // Function to add flag points
  58. function addFlagPoints(){
  59. $.getJSON("data/tmxy4326.geoJson",function(data){
  60. // set flag points to GeoJSON, add GeoJSON layer
  61. // to the map once the file is loaded from external file
  62. flagPoints = L.geoJson(data,{
  63. onEachFeature: function (feature, layer) {
  64. layer.bindPopup(feature.properties.PARCEL_OWN);
  65. }, pointToLayer: function (feature, latlng) {
  66. var marker = L.marker(latlng,{icon: pinIcon});
  67. return marker;
  68. }
  69. }).addTo(map);
  70. });
  71. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement