#!c:/usr/bin/perl -w
# ---------------------------------------------------
# KartenScript für SchlachtPlatz 2
# ---------------------------------------------------
# MODULE
# ---------------------------------------------------
use strict;
use warnings;
use diagnostics;
use CGI qw/:standard/;
use CGI::Carp qw/fatalsToBrowser warningsToBrowser/;
$CGI::POST_MAX=1024 * 100; # max 100K posts
$CGI::DISABLE_UPLOADS = 1; # no uploads
use Data::Dumper;
use HTML::Parser;
use vars;
# ---------------------------------------------------
# KONSTANTEN
# ---------------------------------------------------
use constant UNIX => 0; # Unix y/n
# ---------------------------------------------------
# VARIABLEN
# ---------------------------------------------------
# --- CGI
$| = 1;
my $cgi = CGI->new();
my $query = $cgi->Vars; #extract parameters
# ---------------------------------------------------
# LOGIK
# ---------------------------------------------------
print \print_koords(*DATA)->{1};
#print print_map(*DATA);
# ---------------------------------------------------
# SUBS
# ---------------------------------------------------
sub print_koords {
my $p = HTML::Parser->new ( api_version => 3,
start_h => [ # Handler fuer Start-Tags
\&parse_start, 'tag, attr', # Uebergib Tag und Attribute
],
);
return $p->parse_file(*DATA);
} #print_koords
sub print_map {
my $p_i = HTML::Parser->new ( api_version => 3,
start_h => [ # Handler fuer Start-Tags
\&parse_start_i, 'tag, attr' # Uebergib Tag und Attribute
],
);
return $p_i->parse_file(*DATA);
} #print_map
sub parse_start {
return unless $_[0] eq 'img'; # nur IMG-Tags
#return unless exists $_[1]->{alt}; # alt-Attribute vorhanden?
return unless exists $_[1]->{src}; #meins
return unless $_[1]->{src} =~ /k1j|k0j/;
my $alttext = $_[1]->{alt};
my $src = $_[1]->{src};
# mach was mit $alttext
#print "\n$alttext $src\n";
}
sub parse_start_i {
return unless $_[0] eq 'input'; # nur IMG-Tags
return unless exists $_[1]->{name}; # name-Attribute vorhanden?
return unless $_[1]->{name} =~ /k1|k2/;
my $koN = $_[1]->{name};
my $ko = $_[1]->{value};
# mach was mit $alttext
#print "\n$koN = $ko\n";
}
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
...~100 Zeilen gekürzt...