Einzelnen Beitrag anzeigen
Alt 29.01.2007, 20:38   #1 (permalink)
bradwarden
Neuling
 

Registriert seit: 29.01.2007
Beiträge: 1

bradwarden befindet sich auf einem aufstrebenden Ast

Ausrufezeichen [Perl] cgi soll in 2 Dateien schreiben

Hi,
ich krieg das cgi zwar dazu, in eine Datei zu schreiben aber nicht in 2. Soll es aber. so dass quasi 2 identische Dateien entstehen.
Ich hab jetzt schon ein paar Stunden dran gesessen, aber entweder es schreibt weiterhin nur in eine von beiden oder gar nicht.
Mag ja durchaus sein, dass ich irgendwo n Semikolon oder ne Klammer übersehen hab - jedenfalls krieg ichs nicht hin.
Kann mir jemand helfen?
hier ist der Code
Code:
#!/usr/bin/perl
$freelinks = '../../../cla/kkg/jgs.html';
$freelinksurl = 'http://www.5hundert.com/cla/kkg/jgs.html';

#################################################################################

# Get the form variables
if ($ENV{'REQUEST_METHOD'} eq 'GET')
{
$querystring = $ENV{'QUERY_STRING'};
}
else
{
read(STDIN, $querystring, $ENV{'CONTENT_LENGTH'});
}
@arrnameval = split(/&/, $querystring);
foreach $namval (@arrnameval)
{
    ($nam, $val) = split(/=/, $namval);
    # replace + with space
    $val =~ tr/+/ /;
    # translate hex values
    $val =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
    $FORMDATA{$nam} = $val;
}

$title = $FORMDATA{'yourtitle'};
$title =~ s/<[^>]*>//g;
$url = $FORMDATA{'yoururl'};
$url =~ s/<[^>]*>//g;
$category = $FORMDATA{'category'};
$category =~ s/<[^>]*>//g;

# Read content
open(CLA,"$freelinks");
@arrfreelinks = <CLA>;
close(CLA);

#Save back new content
open(CLA,">$freelinks");
foreach $line (@arrfreelinks)
{
if ($line =~ "--newentries$category--")
{
print CLA "\n<font face=Verdana size=1> &nbsp; - <a href=$url target=new>$title</a></font><br>\n";
}
print CLA "$line";
}
close(CLA);

print "Content-type: text/html\n";
$flinks = "$freelinksurl\n\n";
print qq(Location: $flinks);
return;
Danke im Voraus
brad
bradwarden ist offline   Mit Zitat antworten