#!/usr/bin/perl
use CGI;
my $query =new CGI;
# my $guest_file = "/cgi-bin/data/igb-data.ais";
my $guest_file ="andre1.txt";
&print_page_start;
if ($query->param()) {
if ($query->param('new_name')) {
if (&valid_form) {
# my $guest_file ="andre1.txt";
eval {
open (GUESTS, "+>> $guest_file") or
die "Can't open $guest_file: $!";
flock GUESTS, 2;
seek GUESTS, 0, 0;
my @guests = ;
my @new_guests = ();
foreach $guest (@guests) {
chomp $guest;
($name, $email, $comments) = split ('\|\|'), $guest;
if ($name eq $query->param('name') &&
$email eq $query->param('email') &&
$comments eq $query->param('comments')) {
$name = $query->param('new_name');
$email = $query->param('new_email');
$comments = $query->param('new_comments');
$guest = "$name||$email||$comments";
}
local $/ = local $\ = local $, = "vroom";
push @new_guests, $guest;
}
seek GUESTS, 0,0;
truncate GUESTS, 0;
print GUESTS @new_guests;
close GUESTS;
print "Record(s) modified.
\n";
# print "Retrieve records.\n";
print "Retrieve records.\n";
}
}
else {
&print_form;
}
}
else {
&print_form;
}
}
else {
&print_record_list;
}
chomp $@;
if ($@) {
print "ERROR: $@
\n";
}
&print_page_end;
sub print_page_start {
print $query->header;
print "\n\nModify Records\n";
print "\n\n";
print "Modify Records
\n";
# }
# sub print_form {
print "\n
\n
\n";
sub valid_form {
$return_code = 1;
if (!$query->param('new_name')) {
print "You must enter a name.
\n";
$return_code = 0;
}
if (!$query->param('new_email')) {
print "You must enter an email address.
\n";
$return_code = 0;
}
if (!$query->param('comments')) {
print "You must enter some comments.
\n";
$return_code =0;
}
return $return_code;
sub print_record_list {
open (GUESTS, "> $guest_file") or
die "Can't open guest file: $!";
while () {
chomp;
($name, $email, $comments) = split ('\|\|');
print "\n";
print "
\n";
print "\n";
}
}
sub print_page_end {
print "\n\n";
}
}