![]() |
|< 1 2 3 >| | ![]() |
23 Einträge, 3 Seiten |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#!/bin/perl -w
$| = 1; # Pufferung de Ausgabe ausschalten
use strict;
use warnings;
use CGI qw( :all *form );
use CGI::Carp qw( fatalsToBrowser );
my $cgi = new CGI;
my $DEBUG=1;
my $database = "database.dat";
my $eingabefeld = $cgi->param('eingabefeld');
my $operation = $cgi->param('operation') || '';
my $eintragen = 'eintragen';
my $parameterok = 0;
$parameterok = ( defined $cgi->param('new') or defined $cgi->param('operation')
and not defined $cgi->param('sosenden') );
if ( $parameterok ) {
print $cgi->header(),
$cgi->start_html ( -title => "Test" );
if ( $DEBUG ) {
print '--------------', $cgi->br(),
join $cgi->br(), $cgi->param('eingabefeld'), $cgi->param('operation'), $cgi->param('new'), $cgi->param('sosenden'),
'--------------', $cgi->br();
}
}
else {
print $cgi->redirect( url() . "?operation=anzeigen" );
}
if ($operation eq $eintragen) { eintragen(); }
elsif ($operation eq 'anzeigen') { anzeigen(); }
elsif (defined $cgi->param('new') ){ sosenden(); }
elsif (defined $cgi->param('sosenden') ) {
datenlesenschreiben();
$cgi->delete_all();
print $cgi->redirect( url() . "?operation=anzeigen" );
exit;
}
if ( $parameterok ) {
print $cgi->end_html();
}
exit;
sub anzeigen {
# nicht benötigte Parameter löschen, wegen sticky Modus bei CGI!
$cgi->delete_all();
print $cgi->a( { -href => $cgi->url() . '?' . "operation=$eintragen" }, 'Eintragen' );
print $cgi->br();
open DATABASE, '<', $database or die "$database kann leider nicht geoeffnet werden, weil $!";
flock DATABASE, 2;
while ( my $inLine = <DATABASE> ) {
chomp( $inLine );
my ( $eingabefeld ) = split /\|/, $inLine;
print "$eingabefeld";
$inLine ++;
}
close DATABASE;
}
sub eintragen {
# nicht benötigte Parameter löschen, wegen sticky Modus bei CGI!
$cgi->delete('operation');
$cgi->delete('sosenden');
print $cgi->start_form( -action=>url() ),
$cgi->textfield( -name=>'eingabefeld' ),
$cgi->submit( -name=>'new', -value=>'go'),
$cgi->end_form();
}
sub sosenden {
# nicht benötigte Parameter löschen, wegen sticky Modus bei CGI!
$cgi->delete('operation');
$cgi->delete('new');
print $cgi->start_form( -action=>url() ),
$cgi->submit( -name=>'sosenden', value=>'Ja, so senden'), $cgi->br(),
$cgi->hidden( -name=> 'eingabefeld', -value=>$eingabefeld, -override=>1),
"$eingabefeld",
$cgi->end_form();
}
sub datenlesenschreiben {
open DATABASE, '>>', $database or die "$database kann leider nicht geoeffnet werden, weil $!"; # Anhängen
flock DATABASE, 2;
print DATABASE "$eingabefeld\n";
close DATABASE;
}
1;
![]() |
|< 1 2 3 >| | ![]() |
23 Einträge, 3 Seiten |