#!/usr/local/bin/ruby -Ku require 'cgi' require 'erb' FIELD_FILE = 'gpsfile' @raw @gpspoints = [] cgi = CGI::new begin if cgi.params.include?(FIELD_FILE) then @raw = cgi.params[FIELD_FILE][0] end if @raw then temp = '' @raw.each{|line| values = line.chop.split(/,/) if '$GPGGA' == values[0] then values[2] =~ /(\d{2})(\d{2}\.\d+)/ lat = $1.to_i + $2.to_f / 60 lat = -lat if 'S' == values[3] values[4] =~ /(\d{3})(\d{2}\.\d+)/ long = $1.to_i + $2.to_f / 60 long = -lat if 'W' == values[5] @gpspoints << [lat, long] end temp += line } @raw = temp end #<%= CGI::escapeHTML(@raw) if @raw %> cgi.out(){ERB.new(<<-'ENDHTML').result(binding)} GPS Plotter
GPS Log File :  
ENDHTML rescue cgi.out(){CGI::escapeHTML($!.inspect + $@.inspect)} end