File "gps_data_view.php"

Full path: /www/db_bk/4/gps_data_view.php
File size: 10.5 KiB (10749 bytes)
MIME-type: text/html
Charset: utf-8

Download   Open   Back

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta http-equiv="Pragma" content="no-cache">
    <meta http-equiv="Cache-Control" content="no-cache">
    <title>リアルタイム測位データ</title>
    <!-- css -->
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous">
    <link href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet" crossorigin="anonymous">
    <link href="https://use.fontawesome.com/releases/v5.0.6/css/all.css" rel="stylesheet">
    <!-- page org style -->
    <link href="./style/basic2.css" rel="stylesheet">
  </head>

  <body>


<?php //print date("H:i:s",time()) ."(テスト表示用)"; ?>
	
    <!-- Main Contents -->
    <main>
      <div class="container-fluid">
        <!-- page header -->
        <div class="row mb-2">
          <div class="col-12">
            <div class="title p-2 border rounded text-center"><FONT SIZE='6'>リアルタイム測位データ</FONT></div>
          </div>
        </div>

        <!-- page contents -->
		<?php
		
		//現在のフォルダ名をIDとして使用
		$path = explode("/" ,getcwd());
		$ct = count($path) -1;
		$id =$path[$ct];

		//初期データ
		$offset_file = "/www/ichimill/" .$id ."/offset.txt";
		$timeset_file = "/www/ichimill/" .$id ."/timeset.txt";
		$offset_file2 = "/www/ichimill/" .$id ."/offset2.txt";
		$timeset_file2 = "/www/ichimill/" .$id ."/timeset2.txt";
		$basegps_file = "/www/ichimill/" .$id ."/gps_base.txt";
		$series_number_file = "/www/ichimill/" .$id ."/series_number.txt";
		$series_number_list = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19);
		// ===============================================
		// DB接続準備
		// ===============================================
		$DATA_TABLE = "gps.rtk_data_v_10m" .$id;
		$DATA_TABLE2 = "gps.rtk_data_regist" .$id;
		$HOST = "localhost";
		$DB = "ichimill";
		$USER = "postgres";
		$PASS = "postgres";

		$conn = pg_connect("
			host	=	". $HOST. "
			dbname	=	". $DB. "
			user	=	". $USER. "
			password=	". $PASS. "
		");


	//抽出データ範囲
	$now_date = time();
	$timeset =file_get_contents($timeset_file);
	$start_time = date("Y-m-d H:i:s" ,$now_date - $timeset);

	$sql = "SELECT * FROM " .$DATA_TABLE ." WHERE gps_date >= '" .$start_time ."' order by gps_date limit 1";
	$res = pg_query($conn, $sql) or die("SQL ERROR!!<br />". $sql.pg_last_error());
	$ct = pg_num_rows($res);
	$row = pg_fetch_array($res,0);

	if($ct) file_put_contents($basegps_file ,$row['latitude'] ."," .$row['longitude'] ."," .$row['gps_altitude']);

		EXTRACT($_POST);
//		print_r($_POST);
		if($_POST['regist'])
		{
			//最新データを取得
			$get_data = file_get_contents("/www/ichimill/" .$id ."/new_data.csv");
			$data_split = explode(',',$get_data);
			file_put_contents($series_number_file ,$row['latitude'] ."," .$row['longitude'] ."," .$row['gps_altitude']);
			
			//平面直角座標 変換
			$url = "https://vldb.gsi.go.jp/sokuchi/surveycalc/surveycalc/bl2xy.pl?" ."outputType=json&refFrame=2&zone=" .$_POST['s_no'] ."&latitude=" .$row['latitude'] ."&longitude=" .$row['longitude'];
			$data = file_get_contents($url);
			$params = json_decode($data, true);
			$x = $params['OutputData']['publicX'];
			$y = $params['OutputData']['publicY'];
			
			//ジオイド取得
			$url2 = "http://vldb.gsi.go.jp/sokuchi/surveycalc/geoid/calcgh/cgi/geoidcalc.pl?" ."outputType=json&refFrame=2&latitude=" .$row['latitude'] ."&longitude=" .$row['longitude'];
			$data2 = file_get_contents($url2);
			$params2 = json_decode($data2, true);
			$elevation = $data_split[8] - $params2['OutputData']['geoidHeight'];
			
			
			file_put_contents($series_number_file ,$_POST['s_no']);
//			print "x=" .$params['OutputData']['publicX'] .",";
//			print "y=" .$params['OutputData']['publicY'] ."<BR>";
			//標高計算

			$insert = "INSERT INTO " .$DATA_TABLE2 ."(";
		    $insert .= "gps_date, latitude, longitude, gps_altitude ,position_type_name,remarks,file_name,del_flag,x,y,elevation,s_no)";
			$insert .= "VALUES (";
			$insert .= "'" .$data_split[3] ."',";
			$insert .= $data_split[5]  .",";
			$insert .= $data_split[6]  .",";
			$insert .= $data_split[8] .",";
			$insert .= "'" .$data_split[9] ."',";
			$insert .= "'" .$_POST['remarks'] ."',";
			$insert .= "'" .$_POST['point_name'] ."',";
			$insert .= "'false',";
			$insert .= $x .",";
			$insert .= $y .",";
			$insert .= $elevation ."," ;
			$insert .= $_POST['s_no'] ."" ;
			$insert .= ")";
			$res = pg_query($conn, $insert) or die("SQL ERROR!!<br />". $insert.pg_last_error());
		}


		if($_POST['set'])
		{
			if($_POST['offset']) file_put_contents($offset_file ,$_POST['offset']);
			if($_POST['timeset']) file_put_contents($timeset_file ,$_POST['timeset']);
			if($_POST['offset2']) file_put_contents($offset_file2 ,$_POST['offset2']);
			if($_POST['timeset2']) file_put_contents($timeset_file2 ,$_POST['timeset2']);
		}

		$offset =file_get_contents($offset_file);
		$timeset =file_get_contents($timeset_file);
		$offset2 =file_get_contents($offset_file2);
		$timeset2 =file_get_contents($timeset_file2);
		$series_number = file_get_contents($series_number_file);
//グラフの表示設定


		$imgFileName = "view_map.php?id=".$id;
		$imgFileName2 = "view_map2.php?id=".$id;
		$imgFileName3 = "view_map3.php?id=".$id;
		print "<SCRIPT LANGUAGE='JavaScript'>";
		print "function RefreshImg(URL_,id)";
		print "{";
//		print "console.log(" .URL_ .");";
		print "uniq = new Date();";
		print "uniq = \"?\"+ \"id=\" + id +\"&\" +uniq.getTime();";
		print "newImage = document.imgToLoad.src;";
		print "newImage2 = document.imgToLoad2.src;";
		print "newImage3 = document.imgToLoad3.src;";
		print "index = newImage.indexOf(\"?\", 0);";
		print "index2 = newImage2.indexOf(\"?\", 0);";
		print "index3 = newImage3.indexOf(\"?\", 0);";
		print "		    if (index > 0)";
		print "		        {";
		print "		            newImage = newImage.substr(0, index);";
		print "		            newImage2 = newImage2.substr(0, index2);";
		print "		            newImage3 = newImage3.substr(0, index3);";
		print "		        }";
		print "            if(URL_ == 0)";
		print "		        {";
		print "		           document.imgToLoad.src = 'view_map.php'+uniq;";
		print "		        }";
		print "            else if(URL_ == 1)";
		print "		        {";
		print "		           document.imgToLoad2.src = 'view_map2.php'+uniq;";
		print "		        }";
		print "            else if(URL_ == 2)";
		print "		        {";
		print "		           document.imgToLoad3.src = 'view_map3.php'+uniq;";
		print "		        }";
		print "}";
		print "</SCRIPT>";
		print "</head>";


		print "<TABLE BORDER='2'>";
		print "<TR>";
		print "<TD>";
		print "<TABLE BORDER='0'>";
		print "<TR><TD COLSPAN='2'>";
		print "<div style='height:160px;'>";
		print "<IMG SRC='" .$imgFileName ."' align='top' ALT='LiveCamera' name=imgToLoad onload='setTimeout(\"RefreshImg(0,$id)\", 1000)' onerror='setTimeout(\"RefreshImg(0,$id)\", 5000)' onabort='setTimeout(\"RefreshImg(0,$id)\", 10000)' id=imgToLoad4 naturalsizeflag=0>";
		print "</div>";
		print "</TD>";
		print "</TR>";
		print "<TR>";
		print "<TD COLSPAN='2'>";
		print "<form action='gps_data_view.php' method='post'>";
		print "登録地点名: <INPUT TYPE='text' size='22' NAME='point_name'>";
		print "</TD>";
		print "</TR>";
		print "<TR>";
		print "<TD COLSPAN='2'>";
		print "備   考: <INPUT TYPE='text' size='22' NAME='remarks'>";
		print "</TD>";
		print "</TR>";
		print "<TR>";
		print "<TD>";
		print "系番号";
		Pulldown_create(50 ,$series_number_list,$series_number);
		print "<INPUT TYPE='submit' name='regist'  VALUE='現在地登録' style='width:150px;height:50px' >";
		print "</form>";
		print "</TD>";
		print "<TD>";
		print "<form action='regist.php' method='post' TARGET='_BLANK'>";
		print "<INPUT TYPE='submit' name='regist'  VALUE='登録確認' style='width:90px;height:50px' >";
		print "</form>";
		print "</TD></TR>";
		print "</TABLE>";
		print "</TD>";
		print "</TR>";
		print "</TABLE>";


		print  "<BR>";
	
	
		print "<TABLE BORDER='0'>";
		print "<TR>";
		print "<TD>";
		print "<form action='gps_data_view.php' method='post'>";
		print "基準からのずれ: ± <INPUT TYPE='text' size='10' NAME='offset' VALUE='" .$offset."'>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "<TD ROWSPAN='2'>";
		print "<INPUT TYPE='submit' name='set'  VALUE='更新' style='width:80px;height:60px'  >";
		print "</TD>";
		print "</TR>";

		print "<TR>";
		print "<TD>";
		print "計測時間(秒):  <INPUT TYPE='text' size='10' NAME='timeset' VALUE='" .$timeset."'>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "</TR>";
		print "</TABLE>";
		print "</form>";



		print "<div style='height:560px;'>";
		print "<IMG SRC='" .$imgFileName2 ."' align='top' ALT='LiveCamera' name=imgToLoad2 onload='setTimeout(\"RefreshImg(1,$id)\", 1000)' onerror='setTimeout(\"RefreshImg(1,$id)\", 5000)' onabort='setTimeout(\"RefreshImg(1,$id)\", 10000)' id=imgToLoad0 naturalsizeflag=0>";
		print "</div>";


		print "<TABLE BORDER='0'>";
		print "<TR>";
		print "<TD>";
		print "<form action='gps_data_view.php' method='post'>";
		print "基準からのずれ: ± <INPUT TYPE='text' size='10' NAME='offset2' VALUE='" .$offset2."'>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "<TD ROWSPAN='2'>";
		print "<INPUT TYPE='submit' name='set'  VALUE='更新' style='width:80px;height:60px'  >";
		print "</TD>";
		print "</TR>";

		print "<TR>";
		print "<TD>";
		print "計測時間(秒):  <INPUT TYPE='text' size='10' NAME='timeset2' VALUE='" .$timeset2."'>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "<TD>";
		print "</TD>";
		print "</TR>";
		print "</TABLE>";
		print "</form>";

		print "<div style='height:300px;'>";
		print "<IMG SRC='" .$imgFileName3 ."' align='top' ALT='LiveCamera' name=imgToLoad3 onload='setTimeout(\"RefreshImg(2,$id)\", 1000)' onerror='setTimeout(\"RefreshImg(2,$id)\", 5000)' onabort='setTimeout(\"RefreshImg(2,$id)\", 10000)' id=imgToLoad0 naturalsizeflag=0>";
		print "</div>";

function Pulldown_create($width ,$data_,$selected)
{
	$value_ct = count($data_);
	print "<select name='s_no'  style='width:" .$width ."px;'>";
	for($j= 0 ;$j < $value_ct;$j++)
	{
		//$unix = strtotime($data_[$j]);
		$sel = ($data_[$j] == $selected) ? "selected" : "";
		print "<option value='" .$data_[$j] ."' " .$sel ." >" .$data_[$j] ."</option>";
	}
	print "</select>";
}


		?>
    </main>
  </body>
</html>

PHP File Manager