#!/usr/bin/perl $datafile = './data/landmark.txt'; $cgi_name = './reglm_au.cgi'; if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $QUERY_DATA, $ENV{'CONTENT_LENGTH'}); } else { $QUERY_DATA = $ENV{'QUERY_STRING'}; } @pairs = split(/&/,$QUERY_DATA); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ s//>/g; $value =~ s/\n//g; $value =~ s/\,//g; $QUERY{$name} = $value; # print "name = $name / val = $value"; } $gps_ver = $QUERY{'ver'}; $gps_datum = $QUERY{'datum'}; $gps_lat = $QUERY{'lat'}; $gps_lon = $QUERY{'lon'}; $gps_alt = $QUERY{'alt'}; $gps_time = $QUERY{'time'}; $gps_smaj = $QUERY{'smaj'}; $gps_smin = $QUERY{'smin'}; $gps_majaa = $QUERY{'majaa'}; $gps_fm = $QUERY{'fm'}; $gps_code = $QUERY{'code'}; $gps_title = $QUERY{'title'}; $gps_reg = $QUERY{'reg'}; $gps_comment= $QUERY{'comment'}; #============================== HTMLヘッダ =================== print "Content-type: text/html\n\n"; print "\n"; print "\n"; print "$Title\n"; print "\n"; print "\n"; #============================== 1回目の呼び出し =================== if ($gps_reg eq '') { &ret_location; exit; } #============================== 2回目の呼び出し =================== $gps_date = substr($gps_time,0,4)."/".substr($gps_time,4,2)."/".substr($gps_time,6,2); $gps_ts = substr($gps_time,8,2).":".substr($gps_time,10,2).":".substr($gps_time,12,2); $line = "$gps_code,$gps_lat,$gps_lon,$gps_alt,$gps_title,$gps_comment,$gps_date $gps_ts,Au\n"; push(@SAVEDATA, $line); &data_read; foreach $line (@DATA){ push(@SAVEDATA,$line); } #データベースファイルを上書きする if (open(DB,">$datafile")) { print DB @SAVEDATA; close(DB); } else{ &error(bad_file); } print "登録しました

\n"; print "戻る

\n"; print "\n"; print "\n"; exit; #======================================================================================= sub ret_location { print "ランドマーク登録
\n"; print "現在位置
\n"; print "緯度 $gps_lat
経度 $gps_lon
高度 $gps_alt
\n"; print "
\n"; print "種類:

\n"; print "
\n"; print "
\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
\n"; print "\n"; print "\n"; } #======================================================================================= sub data_read { if (open(DB,"$datafile")) { @DATA = ; close(DB); } }