Cheatah: Ärger mit auslesen von Formularen

Beitrag lesen

Hi,

mein Problem:Wenn nicht soll eine neue HTML-Seite erzeugt in der die, die er zum löschen markiert hat nicht mehr vorhanden sind.

ja, jetzt weiß ich genauso viel wie vorher; ich kann nämlich nur ahnen, daß Du nicht weißt, wie Du markierte Elemente nicht wieder in die Datei zurückschreibt. Erst mal vorweg:

require "cgi-lib.pl";
require "datum.pl";

Bitte kürze Quelltexte sinnvoll. Etwa 90% von dem, was Du gepostet hast, ist völlig überflüssig, erschwert das Lesen und landet zudem unnötigerweise im Archiv.

Nun zurück zum Thema. Du mußt zunächst dafür sorgen, daß eine Verbindung zwischen dem Elementname (Löschung markieren) und der zu löschenden Zeile bzw. den Daten darin besteht. Wenn ich das richtig gesehen habe, geschieht das hier über eine Nummer. Prima. Nun mußt Du also nur noch die Datei einlesen und danach alle Zeilen zurückschreiben, die nicht markiert sind:

open(READ,$datei) or die "Kann $datei nicht zum Lesen oeffnen: $!";
my @array = <READ>;
close(READ);
open(WRITE,">$datei") or die "Kann $datei nicht zum Schreiben oeffnen: $!";
for (my $i=0; $i<=scalar(@array); $i++) {
  print WRITE $array[$i] unless ($in{$i});
}
close(WRITE) or die "Kann $datei nicht schliessen: $!";

Die Detailfragen, z.B. ob Du damit wirklich immer die richtige Zeile erwischst (oder vielleicht die nächste/vorherige), überlasse ich Dir :-)

Cheatah