Hi,
Kann man CGI und Perl vermischen?
CGI ist eine Schnittstelle, die Scripts in (quasi) beliebiger Sprache nutzt. Perl hat sich da recht gut etabliert. Von "vermischen" würde ich allerdings nicht reden, weil dies eine gewisse Gleichförmigkeit von CGI und Perl implizieren würde.
werden die Parameter übergeben und wird db.txt aktualisiert?
CGI definiert u.a. auch die Übergabe solcher Werte. In Perl greifst Du idealerweise mittels des Moduls CGI.pm darauf zu; siehe
perldoc CGI
Was Du mit der "db.txt" meinst, ist mir nicht klar.
<FORM name=Formular onsubmit="return chkFormular()" action=../cgi-bin/links.pl method=post>
Der Wert des action-Attributs _muss_ hier in Anführungszeichen stehen.
URL Adresse (www.name.de)
Das ist ein Hostname, keine URL und auch keine Adresse.
#!/usr/bin/perl
#!/usr/bin/perl -w
use strict;
Dadurch vermeidest Du Fehler.
open(FHOLD, "< $inFile") or die "Kann $inFile nicht oeffnen!/n";
Lass Dir noch $! ausgeben, siehe
perldoc perlvar
open(FHNEW, "> $HFile") or die "Kann $HFile nicht oeffnen!/n";
Anhängendes Schreiben geht übrigens anders; siehe
perldoc -f open
perldoc perlopentut
print FHNEW $thema."+".$url."+".$u_name"\n";
Da du schon mit Doublequotes arbeitest, ist die Schreibweise "$thema+$url+$u_name\n" IMHO besser lesbar - und zudem um einen Syntaxfehler reduziert.
close(FHNEW);
Bei Schreibzugriffen kann auch das Schließen des Dateihandles schiefgehen. Fange also auch hier den Fehlerfall ab.
unlink($inFile);
rename($HFile, $inFile) or die "can't rename $HFile to $inFile: $!";
Schreib doch einfach anhängend :-) Das hat zudem den Vorteil, dass Du Dich nicht mit den Problemen paralleler Schreibzugriffe rumschlagen musst.
Cheatah
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes