Guest User

Untitled

a guest
May 14th, 2018
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1. <?php
  2.  
  3.  
  4.  
  5. dl('php_mapscript.so');
  6.  
  7. dl('php_pgsql.so');
  8.  
  9. // Default values and configuration
  10.  
  11.  
  12. $var1=$_POST["v1"];
  13. $src=$_POST["srch"];
  14. $ss="";
  15.  
  16.  
  17. $con= pg_connect("host=localhost password=mapserver user=postgres dbname=postgres port=5432");
  18.  
  19.  
  20. if (!$con) {
  21.  
  22. echo("Connection Failed........");
  23. }
  24. else
  25. {
  26. echo("con est");
  27. }
  28.  
  29. if($var1=="on")
  30. {
  31. $ss="MS_ON";
  32. }
  33. else
  34. {
  35. $ss="MS_OFF";
  36. }
  37.  
  38.  
  39.  
  40. echo $ss;
  41.  
  42. $val_zsize=3;
  43.  
  44. $check_pan="CHECKED";
  45.  
  46. $map_path="/opt/fgs/www/htdocs/";
  47.  
  48. $map_file="global.map";
  49.  
  50.  
  51.  
  52. $map = ms_newMapObj($map_path.$map_file);
  53.  
  54.  
  55. /////////////////////QYERY BY RECT
  56.  
  57. $rect = ms_newRectObj();
  58. $rect->setExtent(-146, 37, -47, 88);
  59.  
  60.  
  61. // query new layer
  62.  
  63. //////////////////
  64.  
  65.  
  66.  
  67. //$qlayer = ms_newLayerObj($map);
  68. //$qlayer=$map->getLayerByName('INDIA_STATE');
  69. //$qlayer->queryByRect($rect);
  70. //$status = $qlayer->open();
  71. $srid=-1;
  72.  
  73. $unique = 'gid';
  74. $src = addslashes($src);
  75. $select = "select * from india_ds where district='$src'";
  76.  
  77.  
  78. $layerobj=$map->getLayerByName('INDIA_DIS');
  79. $layerobj->set('data', "the_geom from ($select) as tmp using SRID=$srid using unique $unique");
  80.  
  81.  
  82.  
  83. //$result = pg_query($con, "select gid,the_geom from india_st where state='$src'");
  84. /*if (!$result) {
  85. echo "An error occured.\n";
  86. exit;
  87. }*/
  88.  
  89.  
  90.  
  91. //$row = pg_fetch_row($result);
  92. //echo $row[0];
  93.  
  94. //$layerrail=$map->getLayerByName('india_rails');
  95. $status = $layerobj->open();
  96. //$layerobj->queryByRect($rect);
  97. $projInObj = ms_newprojectionobj("proj=latlong");
  98. $projOutObj = ms_newprojectionobj("init=epsg:4326");
  99.  
  100.  
  101. $poPoint = ms_newpointobj();
  102. $poPoint->setXY(-92.0, 62.0);
  103. $poPoint->project($projInObj, $projOutObj);
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111. //$statusrail = $layerrail->open();
  112. //$layerrail->set("status",MS_ON);
  113.  
  114. //$layer->set("name", "india");
  115.  
  116. /*if($ss=="MS_ON")
  117.  
  118.  
  119. $layerobj->set("status",MS_ON);
  120.  
  121. else
  122.  
  123. if($ss=="MS_OFF")
  124.  
  125. $layerobj->set("status",MS_OFF);
  126. */
  127.  
  128.  
  129.  
  130. //$layer->set("data","the_geom" );
  131.  
  132.  
  133.  
  134.  
  135. /*
  136.  
  137. //Convert pixels to map units
  138.  
  139. $map_pt = click2map($_GET['image_x'],$_GET['image_y'],$map->extent);
  140.  
  141. //Create the point
  142.  
  143. $pt = ms_newPointObj();
  144.  
  145. $pt-> setXY($map_pt[0],$map_pt[1]);
  146.  
  147.  
  148.  
  149. //Draw the map and add the point
  150.  
  151. $img1 = $map->draw();
  152.  
  153. $layer_inline = $map->getLayerByName('INLINE');
  154. $layer_inline->set("status",MS_ON);
  155.  
  156. $pt->draw($map, $layer_inline, $img1, "adujas" ,'yuhuu');
  157.  
  158. $url = $img1->saveWebImage();
  159.  
  160. */
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169. function setExtent($map)
  170. {
  171. $mapext = $_GET['mapext'];
  172. $mapext = explode(' ', $mapext);
  173.  
  174. $extent['min']['x'] = floatval($mapext[0]);
  175. $extent['min']['y'] = floatval($mapext[1]);
  176. $extent['max']['x'] = floatval($mapext[2]);
  177. $extent['max']['y'] = floatval($mapext[3]);
  178.  
  179. $map->setExtent($extent['min']['x']
  180. ,$extent['min']['y']
  181. ,$extent['max']['x']
  182. ,$extent['max']['y']
  183. );
  184. }
  185.  
  186.  
  187. function reproject_map( &$map, $projInObj, $projOutObj ) {
  188. //$origProjObj = ms_newProjectionObj( );
  189. // $newProjObj = ms_newProjectionObj( );
  190.  
  191. $oRect = $map->extent;
  192. // $oRect->project( $origProjObj, $newProjObj );
  193. $map->setExtent( $oRect->minx, $oRect->miny, $oRect->maxx, $oRect->maxy );
  194. //$map->setProjection($projOutObj);
  195. }
  196.  
  197.  
  198.  
  199.  
  200.  
  201. if ( isset($HTTP_POST_VARS["mapa_x"]) && isset($HTTP_POST_VARS["mapa_y"])
  202.  
  203. && !isset($HTTP_POST_VARS["full"]) ) {
  204.  
  205.  
  206.  
  207. $extent_to_set = explode(" ",$HTTP_POST_VARS["extent"]);
  208.  
  209.  
  210.  
  211. $map->setextent($extent_to_set[0],$extent_to_set[1],
  212.  
  213. $extent_to_set[2],$extent_to_set[3]);
  214.  
  215.  
  216.  
  217. $my_point = ms_newpointObj();
  218.  
  219.  
  220. $my_point->setXY($HTTP_POST_VARS["mapa_x"],$HTTP_POST_VARS["mapa_y"]);
  221. $my_extent = ms_newrectObj();
  222.  
  223. $my_extent->setextent($extent_to_set[0],$extent_to_set[1],$extent_to_set[2],$extent_to_set[3]);
  224.  
  225. $zoom_factor = $HTTP_POST_VARS["zoom"]*$HTTP_POST_VARS["zsize"];
  226.  
  227.  
  228. if ($zoom_factor == 0) {
  229.  
  230. $zoom_factor = 1;
  231.  
  232. $check_pan = "CHECKED";
  233.  
  234. $check_zout = "";
  235.  
  236. $check_zin = "";
  237.  
  238. } else if ($zoom_factor < 0) {
  239.  
  240. $check_pan = "";
  241.  
  242. $check_zout = "CHECKED";
  243.  
  244. $check_zin = "";
  245.  
  246. } else {
  247.  
  248. $check_pan = "";
  249.  
  250. $check_zout = "";
  251.  
  252. $check_zin = "CHECKED";
  253.  
  254. }
  255.  
  256.  
  257.  
  258. $val_zsize = abs($zoom_factor);
  259.  
  260.  
  261.  
  262. $map->zoompoint($zoom_factor,$my_point,$map->width,$map->height,
  263.  
  264. $my_extent);
  265.  
  266.  
  267. $query=$HTTP_POST_VARS["query"];
  268. if($query!=null)
  269. {
  270.  
  271. $map_pt = click2map($_GET['image_x'],$_GET['image_y'],$map->width,$map->height);
  272.  
  273. $pt = ms_newPointObj();
  274.  
  275.  
  276. $pt-> setXY($map_pt[0],$map_pt[1]);
  277. echo $map_pt[0];
  278. //var $x;
  279. $x=$map->queryByPoint($pt,MS_MULTIPLE,-1);
  280.  
  281. }
  282.  
  283.  
  284.  
  285.  
  286. }
  287.  
  288.  
  289.  
  290. function click2map ($click_x, $click_y,$w,$h)
  291. {
  292.  
  293.  
  294.  
  295. //$e= &$map->extent; //for saving writing
  296.  
  297. echo "x cods". $click_x;
  298.  
  299.  
  300. $x_pct = ($click_x / $w);
  301.  
  302. $y_pct = 1 - ($click_y /$h);
  303.  
  304. $x_map = $e->minx + ( ($e->maxx - $e->minx) * $x_pct);
  305.  
  306. $y_map = $e->miny + ( ($e->maxy - $e->miny) * $y_pct);
  307.  
  308.  
  309.  
  310. return array($x_map, $y_map);
  311.  
  312. }
  313.  
  314.  
  315. if($src)
  316. {
  317. reproject_map( $map,$projInObj, $projOutObj );
  318.  
  319.  
  320. $image=$map->drawQuery();
  321. }
  322. else
  323. {
  324. $image=$map->draw();
  325. }
  326.  
  327.  
  328. $image_url=$image->saveWebImage();
  329.  
  330. $extent_to_html = $map->extent->minx." ".$map->extent->miny." "
  331.  
  332. .$map->extent->maxx." ".$map->extent->maxy;
  333.  
  334.  
  335. $layerobj->draw($image);
  336.  
  337. //$layerrail->draw($image);
  338.  
  339.  
  340.  
  341.  
  342. ?>
  343.  
  344. <HTML>
  345.  
  346. <HEAD>
  347.  
  348. <TITLE>Map 2</TITLE>
  349.  
  350. </HEAD>
  351.  
  352. <BODY>
  353.  
  354. <CENTER>
  355.  
  356. <FORM METHOD=POST ACTION=<?php echo $HTTP_SERVER_VARS['PHP_SELF']?>>
  357.  
  358. <TABLE>
  359.  
  360. <TR>
  361.  
  362. <TD>
  363.  
  364. <INPUT TYPE=IMAGE NAME="mapa" SRC="<?php echo $image_url?>">
  365.  
  366.  
  367.  
  368. </TD>
  369.  
  370. </TR>
  371.  
  372. <TR>
  373.  
  374. <TD>
  375.  
  376. Pan
  377.  
  378. </TD>
  379.  
  380. <TD>
  381.  
  382. <INPUT TYPE=RADIO NAME="zoom" VALUE=0 <?php echo $check_pan?>>
  383.  
  384. </TD>
  385.  
  386. </TR>
  387.  
  388. <TR>
  389.  
  390. <TD>
  391.  
  392. Zoom In
  393.  
  394. </TD>
  395.  
  396. <TD>
  397.  
  398. <INPUT TYPE=RADIO NAME="zoom" VALUE=1 <?php echo $check_zin?>>
  399.  
  400. </TD>
  401.  
  402. </TR>
  403.  
  404. <TR>
  405.  
  406. <TD>
  407.  
  408. Zoom Out
  409.  
  410. </TD>
  411.  
  412. <TD>
  413.  
  414. <INPUT TYPE=RADIO NAME="zoom" VALUE=-1 <?php echo $check_zout?>>
  415.  
  416. </TD>
  417.  
  418. </TR>
  419.  
  420. <TR>
  421.  
  422. <TD>
  423.  
  424. Zoom Size
  425.  
  426. </TD>
  427.  
  428. <TD>
  429.  
  430. <INPUT TYPE=TEXT NAME="zsize" VALUE="<?php echo $val_zsize?>"
  431.  
  432. SIZE=2>
  433.  
  434. </TD>
  435.  
  436. <TD>
  437.  
  438. <INPUT TYPE=radio NAME="query" SIZE=2 VALUE=1>
  439.  
  440. </TD>
  441.  
  442. </TR>
  443.  
  444. <TR>
  445.  
  446. <TD>
  447.  
  448. Full Extent
  449.  
  450. </TD>
  451. <TD><INPUT TYPE=CHECKBOX NAME="v1" VALUE="on" SIZE=2></TD>
  452.  
  453. <TD>
  454.  
  455. <INPUT TYPE=SUBMIT NAME="full" VALUE="Go"
  456.  
  457. SIZE=2>
  458.  
  459. </TD>
  460.  
  461. </TR>
  462. <TR>
  463. <TD> LAYER INDIA</TD>
  464.  
  465. </TR>
  466. <tr>
  467. <td>
  468. search
  469. </td>
  470. <TD>
  471.  
  472. <INPUT TYPE=TEXT NAME="srch" SIZE=10>
  473.  
  474. </TD>
  475.  
  476. </tr>
  477.  
  478. </TABLE>
  479.  
  480. <INPUT TYPE=HIDDEN NAME="extent" VALUE="<?php echo $extent_to_html?>">
  481.  
  482. </FORM>
  483.  
  484. </CENTER>
  485.  
  486. </BODY>
  487.  
  488. </HMTL>
Add Comment
Please, Sign In to add comment