Jammer: Riesenproblem mit einer txt Datenbank

Beitrag lesen

Hi Perl-Gurus,
als erstes sorry das ich mal wieder meine ganzen Scripts hierein poste, ich möchte niemanden als Debugger abstempeln, aber ich komme einfach nicht weiter.
Eintrag.cgi erstellt eine txt Datei die ungefähr so

Nun soll ein Eintrag auf wunsch des Users entfernt aussieht:
auto01.gif!!11111111
<br>111111 
auto02.gif!!2222
<br>222
<br>
 
auto01.gif!!333333
<br>3
<br>3
<br>3
 werden (über Form), was loesch.cgi bewerkstelligen soll.
Problem:
Die Eintrag.txt hat nach dem löschen eines Eintrags nicht mehr das selbe Format wie vorher, was aber nötig ist da ich sie weiterverwenden muß (wenn neue Einträge hinzugefügt werden sollen muß sie genauso aussehen wie vorher, nur ohne den zu löschenden Eintrag).
Ich kriege aber immer nur eine Leere zeile mit   (was später bei der HTML-Seiten Generation als lehre Tabelle interpretiert wird) oder ähnlichen Mist.
Angenommen der zweite Eintrag soll entfernt werden, soll Eintrag.txt danach so aussehen:
aussieht:
auto01.gif!!11111111
<br>111111 
auto01.gif!!333333
<br>3
<br>3
<br>3
 
dann wäre alles in Ordnung und ich könnte wieder aktualiesieren und weiter löschen. Ich versuchs jetzt schon Tagelang, aber ich komm nicht auf die Lösung, hat einer von Euch genug gedult mir zu helfen?

LOESCH.CGI
#!/usr/bin/perl

Löschen von Einträgen aus der Datenbank (UnderConstruktion)

require "cgi-lib.pl";
&parse_form;

$old = "e:/Xitami/webpages/eintrag/eintrag.txt";
open (OLDFILE, $old) or die "Datei existiert nicht\n";

$Satz = "";
while (<OLDFILE>)
{
chomp($Satz);
$Satz .= $_;
}
@Ergebnis = split(/ /, $Satz);
###########
#for (@Ergebnis)
#{

$_.=" ";

#}
###########
$Laenge =$#Ergebnis;

for ($i=0; $i<$Laenge; $i++)
{
  if ($in{'loeschen'} == $i+1)
   {
    $Ergebnis[$i]=substr($Ergebnis[$i], 1, 0) = "";
    
    }
    push (@NEU, $Ergebnis[$i]);
}
close (OLDFILE);
###############
$old = ">e:/Xitami/webpages/eintrag/eintrag.txt";
open (OLDFILE, $old) or die "Datei existiert nicht\n";

Versuche die Eintrag.txt wieder so hinzukriegen, wie sie vor dem löschen

formatiert war um sie später weiterzuverwenden.

#join(@NEU,"&nbsp;\n");
#push(@NEU, "&nbsp;\n");
#$Textneu=@NEU;
print OLDFILE @NEU;
close (OLDFILE);

EINTRAG.CGI
#!/usr/bin/perl

(c) 1999 by Trion Visual Concepts GmbH

written by Dairaen (dairaen@usa.net)

Dieses Script soll die Eingabe von Daten ermöglichen,

welche dann in eine .TXT gespeichert werden.

Die Daten sind:

1. ein Image-Name, der direkt auf dieses gelinkt

werden soll

2. ein Text zu dem Produkt der neben dem Bild (im HTML) stehen soll

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

&parse_form;

$date=&ctime (time);
chop($date);

print "Content-type: text/html\n\n";
print "<HTML>\n";
print "<HEAD>\n";
print "<TITLE>Online Eintragung</TITLE>\n";
print "<BODY bgcolor=dcdcb4>\n";
print "<h3>Eintragung in die eintrag.txt</h3>\n";
print "Sie haben folgende Eintragungen vorgenommen:<br>\n";
print "<center>\n";
print "<table width=400>\n";
print "<tr><td>\n";
print "<ul>\n";
print "<li>Name des Bildes: <b> $in{'image'} </b></li>\n";
print "<li>Beschreibung: </li>\n";
print "<b> $in{'text'} </b>\n";
print "</ul>\n";
print "<br><br>\n";
print "<b><a href=/eintrag.htm>Zurück zum Eingabeformular</b></a><p>\n";
print "<form method=get action=/aktuell.htm>\n";
print "<INPUT type=submit value=Aktualisieren>\n";
print "</form>\n";
print "</BODY>\n";
print "</HTML>\n";

$outfile3 = ">>/Xitami/webpages/eintrag/eintrag.txt";
open(OUTFILE3, $outfile3);
@Ergebnis = split(/\n/, $in{'text'}); #Eingabe wird nach jedem enter zerlegt
$Textneu=join("<br>",@Ergebnis); #zwischen jedes Element einen break setzten
print OUTFILE3 "$in{'image'}!!$Textneu&nbsp;\n";
#print OUTFILE3 "$in{'image'}!!$in{'text'}\n";
close(OUTFILE3);

nach den Scripts soll dann die txt (sofern sie aussieht wie früher) benutzt werden um HTMLSeiten zu erstellen (das hab ich schon).
Nur das die eintrag.txt vor und nach dem Löschen das selbe format hat fehlt mir...
vielen vielen Dank im voraus (und bitte nicht sauer sein wegen der kompletten Scripts, ich habs echt versucht)
mfg
Jammer