//------------------------------------------------------------------------------//
// This script is used to insert survey values from ascii files into the data base
// April 2012 Hubert van Hecke
//------------------------------------------------------------------------------//
$from = $_POST['from'];
echo "from=$from
";
//------------------------------------------------------------------------------//
if ($from==NULL || $from==0) {
echo ("
select input file
");
} // end from=0
//-----------------------------------------------------------------------------------------------//
if ($from==1) {
$infile = $_POST['infile'];
$version = $_POST['inversion'];
echo " file: $infile, version: $inversion
";
$lfound = 0;
$fh = fopen($infile,'r');
while ( ($line = fgets($fh)) && $lfound==0) {
if (substr($line,0,1)=="*") {
echo "
* numbers for $line:
";
$object = "'".substr($line,2,3)." wedge x'";
$lfound = 1;
}
}
fclose($fh);
$size = " (large)";
$goto = 3;
if (substr($object,3,1)=="0") {
$size = " (small)";
$goto = 2;
}
echo "$object $size";
Include "connect.php";
$conn = odbcConnect();
if ( ! $conn ) {
echo "connection problem...";
return 0;
}
$query = "SELECT version,object FROM fvtx_survey WHERE version=$version AND object=$object";
echo "
$query
";
$result = odbc_exec($conn,$query);
$num = odbc_num_rows($result);
odbcClose($conn);
if ($num>0) {
echo "*** there are already records for version $version and object $object
*** nothing done.
";
}
else {
echo ("
No old records found for version $version and object $object
inserting data into the DB?
");
} // else all ok
} // from=1
//-------------------------------- INSERT STATION 0 -------------------------------------------------------//
if ($from==2) {
$version = $_POST['inversion'];
$fname = $_POST['infile'];
Include "connect.php";
$conn = odbcConnect();
if ( ! $conn ) {
echo "connection problem...";
return 0;
}
//$version = 1;
$xmid = array();
$ymid = array();
$angle = array();
echo ("
Insert station-0,1,2,3 survey numbers into the data base
");
$iwedge = 0;
$writeflg = 0;
$linecount = 1;
//$fname = "Station1_all.csv";
echo "$fname";
$disk0_file = fopen($fname,r);
while ($line = fgets($disk0_file)) {
if (substr($line,0,1)=="*") {
echo "
* numbers for $line:
";
if ($writeflg==1) {
echo "
Writing data:
";
$object = "'".substr($line_save,2,3)." wedge x'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($xmid[$i],0,7).","; }
$arr = $arr.substr($xmid[23],0,7)."}'";
$query = "SELECT version,object FROM fvtx_survey WHERE version=$version AND object=$object ORDER BY version";
$result = odbc_exec($conn,$query);
$num = odbc_num_rows($result);
if ($num>0) {
echo "*** $num entries found for version $version object $object
";
$ver_high = odbc_result($result,1);
$version = $ver_high+1;
echo "Highest version numbr found: $ver_high -> setting version to $version
";
}
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge y'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($ymid[$i],0,7).","; }
$arr = $arr.substr($ymid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge phi'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($angle[$i],0,7).","; }
$arr = $arr.substr($angle[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
}
$line_save = $line;
$writeflg = 1;
$iwedge = 0;
}
else { // read a data line
// echo " $line
";
$vals = explode(",",$line);
$vals[1] /= 10000.;
$vals[2] /= 10000.;
$r = sqrt($vals[1]*$vals[1]+ $vals[2]*$vals[2]);
if ($r<5.0) {
$size="in";
$x1 = $vals[1];
$y1 = $vals[2];
}
else {
$size="out";
$x2 = $vals[1];
$y2 = $vals[2];
$xmid[$iwedge] = ($x1+$x2)/2.0;
$ymid[$iwedge] = ($y1+$y2)/2.0;
if ($xmid[$iwedge]<0.0) {
$xmid[$iwedge] *= -1.0;
$ymid[$iwedge] *= -1.0;
}
$r = sqrt($xmid[$iwedge]*$xmid[$iwedge]+$ymid[$iwedge]*$ymid[$iwedge] );
$angle[$iwedge] = 180.0*( atan2($ymid[$iwedge], $xmid[$iwedge]) )/pi();
$angle[$iwedge] -=90.0;
$angle[$iwedge] *= -1.0;
//echo "x= $x1, $x2, $xmid[$iwedge], y= $y1, $y2, $xmid[$iwedge], r= $r, angle= $angle[$iwedge]
";
echo "x= $xmid[$iwedge], y= $ymid[$iwedge], angle= $angle[$iwedge]
";
$iwedge++;
}
}
}
$object = "'".substr($line_save,2,3)." wedge x'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($xmid[$i],0,7).","; }
$arr = $arr.substr($xmid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge y'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($ymid[$i],0,7).","; }
$arr = $arr.substr($ymid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge phi'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($angle[$i],0,7).","; }
$arr = $arr.substr($angle[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
fclose($disk0_file);
echo ("
No old records found for version $version and object $object
inserting data into the DB?
");
echo ("
");
odbcClose($conn);
} //end from=2
//-------------------------- from = 3: station 1,2,3 (large wedges) ----------------------------------------------
if ($from==3) {
$version = $_POST['inversion'];
$fname = $_POST['infile'];
Include "connect.php";
$conn = odbcConnect();
if ( ! $conn ) {
echo "connection problem...";
return 0;
}
//$version = 1;
$xmid = array();
$ymid = array();
$angle = array();
$pi = 3.14159;
echo ("
Insert station-0,1,2,3 survey numbers into the data base
");
$iwedge = 0;
$writeflg = 0;
$linecount = 1;
echo "$fname";
$disk0_file = fopen($fname,r);
while ($line = fgets($disk0_file)) {
if (substr($line,0,1)=="*") { // next quadrant block
echo "
* Large wedges, numbers for $line:
";
if ($writeflg==1) {
echo "
Writing data:
";
$object = "'".substr($line_save,2,3)." wedge x'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($xmid[$i],0,7).","; }
$arr = $arr.substr($xmid[23],0,7)."}'";
$query = "SELECT version,object FROM fvtx_survey WHERE version=$version AND object=$object ORDER BY version";
$result = odbc_exec($conn,$query);
$num = odbc_num_rows($result);
if ($num>0) {
echo "*** $num entries found for version $version object $object
";
$ver_high = odbc_result($result,1);
$version = $ver_high+1;
echo "Highest version numbr found: $ver_high -> setting version to $version
";
}
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge y'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($ymid[$i],0,7).","; }
$arr = $arr.substr($ymid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge phi'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($angle[$i],0,7).","; }
$arr = $arr.substr($angle[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
}
$line_save = $line;
$writeflg = 1;
$iwedge = 0;
}
else { // read a data line
// echo " $line
";
$vals = explode(",",$line);
$vals[1] /= 10000.;
$vals[2] /= 10000.;
$xmid[$iwedge] = $vals[1];
$ymid[$iwedge] = $vals[2];
$angle[$iwedge] = $vals[3]*180.0/$pi;
if ( $iwedge==0 ) $sign = sign($angle[0]); // keep the sign of the first angle
if ($sign>0) {
$angle[$iwedge] -= 90.0;
$angle[$iwedge] *= -1.0;
}
if ($sign<0) {
$angle[$iwedge] += 90.0;
$angle[$iwedge] *= -1.0;
if ($angle[$iwedge]<0) $angle[$iwedge] += 360.0;
$xmid[$iwedge] *=-1.0;
$ymid[$iwedge] *=-1.0;
}
//echo "x= $x1, $x2, $xmid[$iwedge], y= $y1, $y2, $xmid[$iwedge], r= $r, angle= $angle[$iwedge]
";
echo "$sign, x= $xmid[$iwedge], y= $ymid[$iwedge], angle= $angle[$iwedge]
";
$iwedge++;
}
}
$object = "'".substr($line_save,2,3)." wedge x'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($xmid[$i],0,7).","; }
$arr = $arr.substr($xmid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge y'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($ymid[$i],0,7).","; }
$arr = $arr.substr($ymid[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
$object = "'".substr($line_save,2,3)." wedge phi'";
$arr = "'{";
for ($i=0; $i<23; $i++) { $arr = $arr.substr($angle[$i],0,7).","; }
$arr = $arr.substr($angle[23],0,7)."}'";
$query = "INSERT into fvtx_survey (version,object,values) VALUES($version,$object,$arr)";
echo "$query
";
$result = odbc_exec($conn,$query);
fclose($disk0_file);
echo ("
No old records found for version $version and object $object
inserting data into the DB?
");
echo ("
");
odbcClose($conn);
} //end from=3 large
//------------------------------------------------------------------------//
function sign( $number ) {
return ( $number > 0 ) ? 1 : ( ( $number < 0 ) ? -1 : 0 );
}
//------------------------------------------------------------------------//
?>