File "index_d_t.php"

Full path: /www/ansys/qgis/000_nasu/Backup/OLD/index_d_t.php
File size: 8.75 KiB (8958 bytes)
MIME-type: text/xml
Charset: utf-8

Download   Open   Back

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<meta http-equiv="Refresh" content="5 ;URL=index_d_t.php">
		<meta http-equiv="Pragma" content="no-cache">
		<meta http-equiv="Cache-Control" content="no-cache">
		<meta equiv="expires" content="0">
		<title>運行管理-旭川-</title>
		<meta http-equiv="imagetoolbar" content="no"> <!--ie image gizmo OFF!-->

    <style type="text/css">
      #map {
        width: 752px;
        height: 552px;
        border: 1px solid black;
      }
      h1 {
        font-family: Utopia,Arial, Helvetica, sans-serif;
        font-size: 28px;
        line-height: 32px;
        color: #005599;
      }
      #features {
        margin-top: 5px;
        font-size: small;
      }
      table, table td, table th {
        border: 1px solid #DDD;
        border-collapse: collapse;
        margin: 0;
        text-align: center;
        padding: 1px 3px;
      }
      table th {
        background-color: #EEE;
        font-weight: bold;
      }

    </style>

<?php
		//
		// Loading the map file
		//
		//データベース接続
		$HOST = "192.168.100.153";
		$DB = "ansys";
		$USER = "postgres";
		$PASS = "am#71ZJ*";

		$conn = pg_connect("
		host	=	". $HOST. "
		dbname	=	". $DB. "
		user	=	". $USER. "
		password=	". $PASS. "
		") or die("接続エラー" .$HOST ."--" .$DB ."--" .$USER ."--" .$PASS .pg_last_error());

		$sql = "SELECT * FROM qgis.ts_terminal WHERE app_id='6' AND const_id='2' ORDER BY terminal_name;";
		$res = pg_query($conn,$sql) or die (pg_last_error() ."<BR>" .$sql ."<BR>");
		$Ct = pg_num_rows($res);
		for($ii = 0;$ii < $Ct;$ii++)
		{
			$row = pg_fetch_array($res,$ii);
			$lat[$ii] = $row['lat'];
			$lon[$ii] = $row['lon'];
			$w_status[$ii] = $row['work_status'];
			$t_name[$ii] = $row['terminal_name'];
		}
		$lat_php = join(",",$lat);
		$lon_php = join(",",$lon);
		$w_status_php = join(",",$w_status);
		$t_name_php = join(",",$t_name);
		$jct = 0;
?>

	<script src="./OpenLayers.js"></script>
	<script type="text/javascript" charset="utf-8">
		var map;
		var lon;
		var lat;
		var zoom;

		function init()
		{
			<!--
			var dct = <?php echo $Ct; ?>;
			var j = 0;

			//■PHPで抽出したデータをJavaScript側の変数へ代入⇒カンマ区切りデータを配列に格納
			var lat_js = "<?php echo $lat_php ?>";
			var lon_js = "<?php echo $lon_php ?>";
			var ws_js = "<?php echo $w_status_php ?>";
			var t_name_js = "<?php echo $t_name_php ?>";
			var Lat = lat_js.split(",");
			var Lon = lon_js.split(",");
			var Ws = ws_js.split(",");
			var Tn = t_name_js.split(",");
			//document.write(t_name_js);

			var options = {
				'projection':"EPSG:4326",
				scales : [3000,100000,50000,25000,12500],
				'minZoomLevel': 1,
				'numZoomLevels':5
				};

			map = new OpenLayers.Map('map',options);

			//■現在のクッキーの値をセット
            if((GetCookie('lon') == null) || (GetCookie('lon') == 0))
            {
            	lon = 139.944;
            	document.cookie = 'lon=' + encodeURIComponent( lon );
            }
            else
            {
            	lon = GetCookie('lon');
            }
            
            if((GetCookie('lat') == null) || (GetCookie('lat') == 0))
            {
            	lat = 36.908;
            	document.cookie = 'lat=' + encodeURIComponent( lat );
            }
            else
            {
            	lat = GetCookie('lat');
            }
            
            if(GetCookie('zoom') == null)
            {
            	zoom = 3;
            	document.cookie = 'zoom=' + encodeURIComponent( zoom );
            }
            else
            {
            	zoom = GetCookie('zoom');
            }

			//■マウスイベントの登録
			map.events.register("mousemove", map, onMouseMove);
			map.events.register("zoomend", map, onZoom);


			var landsat = new OpenLayers.Layer.WMS(
					"OnEarth",
					"http://hyperquad.telascience.org/cgi-bin/onearth",
					{layers: "OnEarth"},
					{
					isBaseLayer: true,
					buffer: 0,
					visibility: false,
					tileSize: new OpenLayers.Size(512, 512),
					opacity: 1.0
					}
				);
				
			var host = location.protocol + "//" + location.hostname;

			if (location.port != "")
			{
				host += ":" + location.port;
			}
			
			var msLayer = new OpenLayers.Layer.WMS(
					"WMSレイヤー",
					host + "/cgi-bin/mapserv-i18n?map=/www/ansys/qgis/000_nasu/map/mapfiles/wms.map&",
					{layers: ['road'],transparent: true, format: 'image/gif'} ,
					{isBaseLayer: true, singleTile: true, opacity:0.7}
				);
			//	document.write(host+ "/cgi-bin/mapserv-i18n?map=../html/mapserver-extensions/mapfiles/wms.map&");
			map.addLayer(msLayer);

			var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
			renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
  

///////////////////////////////////////////////
			// 図の基本プロパティ
			//var layer_style = OpenLayers.Util.extend({}, OpenLayers.Feature.Vector.style['default']);
			//layer_style.fillOpacity = 0.2; // 内側の透明度
			//layer_style.graphicOpacity = 1; // 図全体の透明度
			
			var vectorLayer = new Array(50);
			var style = new Array(50);
			for(j = 0;j < dct;j++)
			{
				var pointFeature;
				//styleの定義
				//style[j] = new OpenLayers.Util.extend({}, layer_style);
				style[j] = new OpenLayers.Util.extend({}, OpenLayers.Feature.Vector.style['default']);
				style[j].fillOpacity = 0.2; // 内側の透明度
				style[j].graphicOpacity = 1; // 図全体の透明度
				style[j].label = Tn[j];
				style[j].fontSize = 10; // 文字のサイズ
				style[j].labelXOffset = 35;
				style[j].labelYOffset = 10;
				
				vectorLayer[j] = new OpenLayers.Layer.Vector(Tn[j], {style: style[j]});

				// create a point feature 2つの点の位置とプロパティ
				var point = new OpenLayers.Geometry.Point(Lon[j], Lat[j]);
				point.transform(
					new OpenLayers.Projection("EPSG:4326"),
					map.getProjectionObject()
				);


				//work_statusによって色を変更
				pointFeature = new OpenLayers.Feature.Vector(point,null,style[j]);
				
				// レイヤの追加と描画する図の指定
				map.addLayer(vectorLayer[j]);
				vectorLayer[j].addFeatures(pointFeature);
			}
			
			//document.write(Tn[j]);
			
			var point = new OpenLayers.Geometry.Point(139.944,36.908);
			var pointFeature = new OpenLayers.Feature.Vector(point);
			var map_center = new OpenLayers.Geometry.Point(lon, lat);
			map.setCenter(new OpenLayers.LonLat(map_center.x, map_center.y), zoom);
		}

		//マウスイベント(移動後)
        function onMouseMove()
        {
            var lonLat = map.getCenter();
            //document.getElementById("lon").value = lonLat.lon;
            //document.getElementById("lat").value = lonLat.lat;
            document.cookie = 'lon=' + encodeURIComponent( lonLat.lon );
            document.cookie = 'lat=' + encodeURIComponent( lonLat.lat );
        }

		//マウスイベント(ズーム完了後)
        function onZoom()
        {
        	var lonLat = map.getCenter();
            var ZoomSts = map.getZoom();
            //document.getElementById("zoom").value = ZoomSts;
            document.cookie = 'zoom=' + encodeURIComponent( ZoomSts );
            document.cookie = 'lon=' + encodeURIComponent( lonLat.lon );
            document.cookie = 'lat=' + encodeURIComponent( lonLat.lat );
        }

		//クッキー削除
		function deleteCookie()
		{
		   cName = "zoom="; // 削除するクッキー名
		   dTime = new Date();
		   dTime.setYear(dTime.getYear() - 1);
		   document.cookie = cName + ";expires=" + dTime.toGMTString();
		}

		//クッキー読み込み
		function GetCookie(name)
		{
		    var result = null;
		    var cookieName = name + '=';
		    var allcookies = document.cookie;
		    var position = allcookies.indexOf( cookieName );

		    if( position != -1 )
		    {
		        var startIndex = position + cookieName.length;
		        var endIndex = allcookies.indexOf( ';', startIndex );

		        if( endIndex == -1 )
		        {
		            endIndex = allcookies.length;
		        }

		        result = decodeURIComponent(allcookies.substring(startIndex, endIndex));
		    }
		    return result;
		}

/*
function hideerrors() {
return true;
}
window.onerror = hideerrors;
*/
        //;"setInterval('changeImg()',1000*5)"
       // -->
    </script>
	</head>
	<body onload="init()">
	  <div id="tags"></div>
	  <form>
		<input type="hidden" id="zoom" value="3" readonly />
		<input type="hidden" id="lon" value="139.944" readonly />
		<input type="hidden" id="lat" value="36.908" readonly />
	</form>
	<div id="map" name="map"></div>
	</body>
</html>

PHP File Manager