Guest User

Untitled

a guest
Jun 14th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.16 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. do a die($select);
  96. $status = $layerobj->open();
  97.  
  98. //$layerobj->queryByRect($rect);
  99. $projInObj = ms_newprojectionobj("proj=latlong");
  100. $projOutObj = ms_newprojectionobj("init=epsg:4326");
  101.  
  102.  
  103. $poPoint = ms_newpointobj();
  104. $poPoint->setXY(-92.0, 62.0);
  105. $poPoint->project($projInObj, $projOutObj);
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113. //$statusrail = $layerrail->open();
  114. //$layerrail->set("status",MS_ON);
  115.  
  116. //$layer->set("name", "india");
  117.  
  118. /*if($ss=="MS_ON")
  119.  
  120.  
  121. $layerobj->set("status",MS_ON);
  122.  
  123. else
  124.  
  125. if($ss=="MS_OFF")
  126.  
  127. $layerobj->set("status",MS_OFF);
  128. */
  129.  
  130.  
  131.  
  132. //$layer->set("data","the_geom" );
  133.  
  134.  
  135.  
  136.  
  137. /*
  138.  
  139. //Convert pixels to map units
  140.  
  141. $map_pt = click2map($_GET['image_x'],$_GET['image_y'],$map->extent);
  142.  
  143. //Create the point
  144.  
  145. $pt = ms_newPointObj();
  146.  
  147. $pt-> setXY($map_pt[0],$map_pt[1]);
  148.  
  149.  
  150.  
  151. //Draw the map and add the point
  152.  
  153. $img1 = $map->draw();
  154.  
  155. $layer_inline = $map->getLayerByName('INLINE');
  156. $layer_inline->set("status",MS_ON);
  157.  
  158. $pt->draw($map, $layer_inline, $img1, "adujas" ,'yuhuu');
  159.  
  160. $url = $img1->saveWebImage();
  161.  
  162. */
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171. function setExtent($map)
  172. {
  173. $mapext = $_GET['mapext'];
  174. $mapext = explode(' ', $mapext);
  175.  
  176. $extent['min']['x'] = floatval($mapext[0]);
  177. $extent['min']['y'] = floatval($mapext[1]);
  178. $extent['max']['x'] = floatval($mapext[2]);
  179. $extent['max']['y'] = floatval($mapext[3]);
  180.  
  181. $map->setExtent($extent['min']['x']
  182. ,$extent['min']['y']
  183. ,$extent['max']['x']
  184. ,$extent['max']['y']
  185. );
  186. }
  187.  
  188.  
  189. function reproject_map( &$map, $projInObj, $projOutObj ) {
  190. //$origProjObj = ms_newProjectionObj( );
  191. // $newProjObj = ms_newProjectionObj( );
  192.  
  193. $oRect = $map->extent;
  194. // $oRect->project( $origProjObj, $newProjObj );
  195. $map->setExtent( $oRect->minx, $oRect->miny, $oRect->maxx, $oRect->maxy );
  196. //$map->setProjection($projOutObj);
  197. }
  198.  
  199.  
  200.  
  201.  
  202.  
  203. if ( isset($HTTP_POST_VARS["mapa_x"]) && isset($HTTP_POST_VARS["mapa_y"])
  204.  
  205. && !isset($HTTP_POST_VARS["full"]) ) {
  206.  
  207.  
  208.  
  209. $extent_to_set = explode(" ",$HTTP_POST_VARS["extent"]);
  210.  
  211.  
  212.  
  213. $map->setextent($extent_to_set[0],$extent_to_set[1],
  214.  
  215. $extent_to_set[2],$extent_to_set[3]);
  216.  
  217.  
  218.  
  219. $my_point = ms_newpointObj();
  220.  
  221.  
  222. $my_point->setXY($HTTP_POST_VARS["mapa_x"],$HTTP_POST_VARS["mapa_y"]);
  223. $my_extent = ms_newrectObj();
  224.  
  225. $my_extent->setextent($extent_to_set[0],$extent_to_set[1],$extent_to_set[2],$extent_to_set[3]);
  226.  
  227. $zoom_factor = $HTTP_POST_VARS["zoom"]*$HTTP_POST_VARS["zsize"];
  228.  
  229.  
  230. if ($zoom_factor == 0) {
  231.  
  232. $zoom_factor = 1;
  233.  
  234. $check_pan = "CHECKED";
  235.  
  236. $check_zout = "";
  237.  
  238. $check_zin = "";
  239.  
  240. } else if ($zoom_factor < 0) {
  241.  
  242. $check_pan = "";
  243.  
  244. $check_zout = "CHECKED";
  245.  
  246. $check_zin = "";
  247.  
  248. } else {
  249.  
  250. $check_pan = "";
  251.  
  252. $check_zout = "";
  253.  
  254. $check_zin = "CHECKED";
  255.  
  256. }
  257.  
  258.  
  259.  
  260. $val_zsize = abs($zoom_factor);
  261.  
  262.  
  263.  
  264. $map->zoompoint($zoom_factor,$my_point,$map->width,$map->height,
  265.  
  266. $my_extent);
  267.  
  268.  
  269. $query=$HTTP_POST_VARS["query"];
  270. if($query!=null)
  271. {
  272.  
  273. $map_pt = click2map($_GET['image_x'],$_GET['image_y'],$map->width,$map->height);
  274.  
  275. $pt = ms_newPointObj();
  276.  
  277.  
  278. $pt-> setXY($map_pt[0],$map_pt[1]);
  279. echo $map_pt[0];
  280. //var $x;
  281. $x=$map->queryByPoint($pt,MS_MULTIPLE,-1);
  282.  
  283. }
  284.  
  285.  
  286.  
  287.  
  288. }
  289.  
  290.  
  291.  
  292. function click2map ($click_x, $click_y,$w,$h)
  293. {
  294.  
  295.  
  296.  
  297. //$e= &$map->extent; //for saving writing
  298.  
  299. echo "x cods". $click_x;
  300.  
  301.  
  302. $x_pct = ($click_x / $w);
  303.  
  304. $y_pct = 1 - ($click_y /$h);
  305.  
  306. $x_map = $e->minx + ( ($e->maxx - $e->minx) * $x_pct);
  307.  
  308. $y_map = $e->miny + ( ($e->maxy - $e->miny) * $y_pct);
  309.  
  310.  
  311.  
  312. return array($x_map, $y_map);
  313.  
  314. }
  315.  
  316.  
  317. if($src)
  318. {
  319. reproject_map( $map,$projInObj, $projOutObj );
  320.  
  321.  
  322. $image=$map->drawQuery();
  323. }
  324. else
  325. {
  326. $image=$map->draw();
  327. }
  328.  
  329.  
  330. $image_url=$image->saveWebImage();
  331.  
  332. $extent_to_html = $map->extent->minx." ".$map->extent->miny." "
  333.  
  334. .$map->extent->maxx." ".$map->extent->maxy;
  335.  
  336.  
  337. $layerobj->draw($image);
  338.  
  339. //$layerrail->draw($image);
  340.  
  341.  
  342.  
  343.  
  344. ?>
  345.  
  346. <HTML>
  347.  
  348. <HEAD>
  349.  
  350. <TITLE>Map 2</TITLE>
  351.  
  352. </HEAD>
  353.  
  354. <BODY>
  355.  
  356. <CENTER>
  357.  
  358. <FORM METHOD=POST ACTION=<?php echo $HTTP_SERVER_VARS['PHP_SELF']?>>
  359.  
  360. <TABLE>
  361.  
  362. <TR>
  363.  
  364. <TD>
  365.  
  366. <INPUT TYPE=IMAGE NAME="mapa" SRC="<?php echo $image_url?>">
  367.  
  368.  
  369.  
  370. </TD>
  371.  
  372. </TR>
  373.  
  374. <TR>
  375.  
  376. <TD>
  377.  
  378. Pan
  379.  
  380. </TD>
  381.  
  382. <TD>
  383.  
  384. <INPUT TYPE=RADIO NAME="zoom" VALUE=0 <?php echo $check_pan?>>
  385.  
  386. </TD>
  387.  
  388. </TR>
  389.  
  390. <TR>
  391.  
  392. <TD>
  393.  
  394. Zoom In
  395.  
  396. </TD>
  397.  
  398. <TD>
  399.  
  400. <INPUT TYPE=RADIO NAME="zoom" VALUE=1 <?php echo $check_zin?>>
  401.  
  402. </TD>
  403.  
  404. </TR>
  405.  
  406. <TR>
  407.  
  408. <TD>
  409.  
  410. Zoom Out
  411.  
  412. </TD>
  413.  
  414. <TD>
  415.  
  416. <INPUT TYPE=RADIO NAME="zoom" VALUE=-1 <?php echo $check_zout?>>
  417.  
  418. </TD>
  419.  
  420. </TR>
  421.  
  422. <TR>
  423.  
  424. <TD>
  425.  
  426. Zoom Size
  427.  
  428. </TD>
  429.  
  430. <TD>
  431.  
  432. <INPUT TYPE=TEXT NAME="zsize" VALUE="<?php echo $val_zsize?>"
  433.  
  434. SIZE=2>
  435.  
  436. </TD>
  437.  
  438. <TD>
  439.  
  440. <INPUT TYPE=radio NAME="query" SIZE=2 VALUE=1>
  441.  
  442. </TD>
  443.  
  444. </TR>
  445.  
  446. <TR>
  447.  
  448. <TD>
  449.  
  450. Full Extent
  451.  
  452. </TD>
  453. <TD><INPUT TYPE=CHECKBOX NAME="v1" VALUE="on" SIZE=2></TD>
  454.  
  455. <TD>
  456.  
  457. <INPUT TYPE=SUBMIT NAME="full" VALUE="Go"
  458.  
  459. SIZE=2>
  460.  
  461. </TD>
  462.  
  463. </TR>
  464. <TR>
  465. <TD> LAYER INDIA</TD>
  466.  
  467. </TR>
  468. <tr>
  469. <td>
  470. search
  471. </td>
  472. <TD>
  473.  
  474. <INPUT TYPE=TEXT NAME="srch" SIZE=10>
  475.  
  476. </TD>
  477.  
  478. </tr>
  479.  
  480. </TABLE>
  481.  
  482. <INPUT TYPE=HIDDEN NAME="extent" VALUE="<?php echo $extent_to_html?>">
  483.  
  484. </FORM>
  485.  
  486. </CENTER>
  487.  
  488. </BODY>
  489.  
  490. </HMTL>
Add Comment
Please, Sign In to add comment