File "safie_data.php"
Full path: /www/ais_management/safie_data.php
File size: 8.85 KiB (9059 bytes)
MIME-type: text/html
Charset: utf-8
<!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>Safieデータ管理</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>
<!-- 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'>Safieデータ管理</FONT></div>
</div>
</div>
<script>
function copyToClipboard(no) {
// コピー対象をJavaScript上で変数として定義する
var name = "copyTarget[" + no + "]";
var copyTarget = document.getElementById(name);
// コピー対象のテキストを選択する
copyTarget.select();
// 選択しているテキストをクリップボードにコピーする
document.execCommand("Copy");
// コピーをお知らせする
// alert("コピーできました! : " + copyTarget.value);
}
</script>
<?php
EXTRACT($_POST);
//print_r($_POST);
//Safieのデータ出力フォルダ
$safie_data_path = "/www/ais_management/safie/";
//データ取得実行フラグパス
$flag_file_path = "/www/ais_management/setting/safie_start_flag.txt";
//データ取得間隔(秒)
$interval_file_path = "/www/ais_management/setting/safie_interval.txt";
//船舶のZ情報
$z_path = "/www/ais_management/setting/safie_z.txt";
$safie_z = file_get_contents($z_path);
//使用するSafie番号取得
$safie_no_path = "/www/ais_management/setting/safie_no.txt";
if($_POST['deg_update'])
{
if(0 <= $_POST['deg_set'])
{
$output_dir = $safie_data_path .$_POST['deg_'];
$azimuth_path = $output_dir ."/azimuth.txt";
file_put_contents($azimuth_path, $_POST['deg_set'] ,LOCK_EX);
}
}
if($_POST['update'])
{
// print_r($_POST);
$safie_data = $_POST['safie1'] ."," .$_POST['safie2'] ."," .$_POST['safie3'] ."," .$_POST['safie4'] ."," .$_POST['safie5'] ."," .$_POST['safie6'];
file_put_contents($safie_no_path ,$safie_data ,LOCK_EX);
}
$safie_no_read = file_get_contents($safie_no_path);
$safie_no = explode(",",$safie_no_read);
$data_ct = count($safie_no);
if($_POST['p_start'])
{
file_put_contents($flag_file_path, "1" ,LOCK_EX);
exec('/usr/bin/php -f /www/ais_management/data_output_safie.php > /dev/null &');
}
if($_POST['p_stop'])
{
file_put_contents($flag_file_path, "0" ,LOCK_EX);
}
if($_POST['interval_upd'])
{
if(0 <= ($_POST['interval_set']))
{
file_put_contents($interval_file_path, $_POST['interval_set'] ,LOCK_EX);
}
}
$interval = file_get_contents($interval_file_path);
$start_flag = file_get_contents($flag_file_path);
$status =($start_flag)? '<B><FONT COLOR="red">実行中</FONT></B>' : '<B>停止中</B>';
$button =($start_flag)? 'disabled' : '';
print "<TABLE><TR><TD>" ."<A HREF='https://penta-02.ptgw.net/ais_management/ais_data.php'><FONT SIZE='4'>" ."AISデータ管理" ."</FONT></A></TD></TR></TABLE>";
print "<TABLE BORDER='0'>";
print "<TR>";
print "<TD>";
print "<form name='program' enctype='multipart/form-data' action='' method='post'>";
print "<TABLE BORDER='0'>";
print "<TR ALIGN='center'><TD>";
print "<B>動作状態:</B>";
print "</TD>";
print "<TD>";
print $status;
print "<TD></TD><TD></TD>";
print "</TD></TR>";
print "<TR><TD>";
print "<INPUT TYPE='submit' NAME='p_start' VALUE='Safie取得開始' style='width:130px;height:50px;'>";
print "</TD>";
print "<TD>";
print "<INPUT TYPE='submit' NAME='p_stop' VALUE='停止' style='width:130px;height:50px;'>";
print "</TD>";
print "<TD></TD><TD></TD>";
print "</TR>";
print "<TR>";
print "<TD ALIGN='center'>";
print "<form name='program' enctype='multipart/form-data' action='$_SERVER[PHP_SELF]' method='post'>";
print "取得間隔(s):";
print "</TD>";
print "<TD>";
print "<INPUT TYPE='text' NAME='interval_set' SIZE='1' VALUE='" .$interval ."'".$button .">";
print "<INPUT TYPE='submit' NAME='interval_upd' VALUE='変更' style='width:80px;'" .$button .">";
print "</TD>";
print "</TR>";
print "</form>";
print "<TR>";
print "<form name='program' enctype='multipart/form-data' action='$_SERVER[PHP_SELF]' method='post'>";
print "<TD COLSPAN='2'>";
print "<BR><INPUT TYPE='submit' NAME='new' VALUE='最新のデータ表示' style='width:260px;'>";
print "</TD>";
print "</FORM>";
print "</TR>";
print "</TABLE>";
print "</TD>";
print "<TD>";
print "<form name='program' enctype='multipart/form-data' action='$_SERVER[PHP_SELF]' method='post'>";
print "<TABLE BORDER='1'>";
print "<TR ALIGN='center' bgcolor='#00008B'><B>";
print "<TD COLSPAN='2' WIDTH='300'><FONT COLOR='white'>" ."Safie設定" ."</FONT></TD>";
print "</TR>";
print "<TR>";
print "<TD ALIGN='center' WIDTH='100'>" ."Safie番号" ."</TD>";
print "<TD>";
print " 1:<INPUT TYPE='text' NAME='safie1' SIZE='10' VALUE='" .$safie_no[0] ."'>";
print " 2:<INPUT TYPE='text' NAME='safie2' SIZE='10' VALUE='" .$safie_no[1] ."'>";
print " 3:<INPUT TYPE='text' NAME='safie3' SIZE='10' VALUE='" .$safie_no[2] ."'>";
print "<BR>";
print " 4:<INPUT TYPE='text' NAME='safie4' SIZE='10' VALUE='" .$safie_no[3] ."'>";
print " 5:<INPUT TYPE='text' NAME='safie5' SIZE='10' VALUE='" .$safie_no[4] ."'>";
print " 6:<INPUT TYPE='text' NAME='safie6' SIZE='10' VALUE='" .$safie_no[5] ."'>";
print "<BR>";
print "</TD>";
print "</TR>";
print "<TR>";
print "<TD ALIGN='center' WIDTH='100'>" ."位置情報:Z" ."</TD>";
print "<TD>";
print " ";
print "<INPUT TYPE='text' NAME='z' VALUE='" .$safie_z ."' SIZE='10'" .$button .">";
print "</TD>";
print "</TR>";
print "<TR>";
print "<TD COLSPAN='2' ALIGN='center'>";
print "<INPUT TYPE='submit' NAME='update' VALUE='設定更新' style='width:310px;'" .$button .">";
print "</FORM>";
print "</TD>";
print "</TR>";
print "</TABLE>";
print "</TD>";
print "</TR>";
print "</TABLE>";
print "<TABLE BORDER='1'>";
print "<TR ALIGN='center' bgcolor='#00008B'>";
print "<TD WIDTH='100'><FONT COLOR='white'>" ."シリアルNo" ."</FONT></TD>";
print "<TD WIDTH='100'><FONT COLOR='white'>" ."X" ."</FONT></TD>";
print "<TD WIDTH='100'><FONT COLOR='white'>" ."Y" ."</FONT></TD>";
print "<TD WIDTH='100'><FONT COLOR='white'>" ."Z" ."</FONT></TD>";
print "<TD WIDTH='200'><FONT COLOR='white'>" ."方位" ."</FONT></TD>";
print "<TD WIDTH='650'><FONT COLOR='white'>" ."CSVパス" ."</FONT></TD>";
print "<TD WIDTH='150'><FONT COLOR='white'>" ."更新日時" ."</FONT></TD>";
print "</TR>";
print "<form name='program' enctype='multipart/form-data' action='' method='post'>";
for($i = 0;$i < $data_ct;$i++)
{
// print $safie_no[$i] ."<BR>";
if($safie_no[$i])
{
$output_dir = $safie_data_path .$safie_no[$i];
$azimuth_path = $output_dir ."/azimuth.txt";
$gps_data_path = $output_dir ."/gpsdata.csv";
$csv_path = str_replace("/www" ,"https://penta-02.ptgw.net" ,$gps_data_path);
if(!file_exists($output_dir))
{
mkdir($output_dir, 0777);
chmod($output_dir, 0777);
file_put_contents($azimuth_path ,"0",LOCK_EX);
file_put_contents($gps_data_path , date("Y/m/d H:i" ,time()) .",0,0," .$safie_z .",0,0,0",LOCK_EX);
}
$view_data = file_get_contents($gps_data_path);
$data_ = explode(",",$view_data);
$azimuth = file_get_contents($azimuth_path);
print "<TR ALIGN='center'>";
print "<TD WIDTH='100'>" .$safie_no[$i] ."</TD>";
print "<TD WIDTH='100'>" .$data_[1] ."</TD>";
print "<TD WIDTH='100'>" .$data_[2] ."</TD>";
print "<TD WIDTH='100'>" .$data_[3] ."</TD>";
print "<TD WIDTH='200'>";
print "<form name='program' enctype='multipart/form-data' action='' method='post'>";
print "<INPUT TYPE='text' NAME='deg_set' SIZE='1' VALUE='" .$azimuth ."'".$button .">";
print "<INPUT TYPE='hidden' NAME='deg_' VALUE='" .$safie_no[$i] ."'>";
print "<INPUT TYPE='submit' NAME='deg_update' VALUE='変更' style='width:50px;'" .$button .">";
print "</form>";
print "<TD WIDTH='650'>" ."<input id='copyTarget[" .$i."]" ."' type='text' value='" .$csv_path ."' style='width:560px;' readonly> ";
print "<button onclick='copyToClipboard(\"" .$i ."\")'>Copy</button>";
print "</TD>";
print "<TD WIDTH='150'>" .date("Y-m-d H:i:s",strtotime($data_[0])) ."</TD>";
}
}
print "</TABLE>";
?>
</main>
</body>
</html>