hi!
sub add
{
if ($status eq 'done')
{
✓
if ($time > 0)
{
($Second,$Minute,$Hour,$Month_Day,
$Month,$Year,$Week_Day,$IsDST) = (localtime)[0,1,2,3,4,5,6,8];
Das hier:
if ($Year > 99)
{
$Year = $Year - 100;
if ($Year > 9)
{
$Year = "20$Year";
}
else
{
$Year = "200$Year";
}
}
else
{
$Year = "19$Year";
}
wegschmeißen und folgendes schreiben:
$Year += 1900;
if ($time = 1)
Wenn schon, dann:
if ($time == 1)
^--- Vergleichsoperator, keine Zuweisung!
{
$date="$Month_Day.$Months[$Month].$Year";
}
elsif ($time = 2)
dto.
elsif ($time == 2)
{
$date="$Hour:$Minute:$Second $Months[$Month], $Month_Day $Year - ";
}
}
$line = $title."|".$date."|".$text."\n";
Da fehlen "-Zeichen!
open(DATA,"<$data") || print "Cannot open datafile for reading";
open (..) or die "Can't open datefile for reading: $!";
Das hier:
while ($riga = <DATA>)
{
push (@news,$riga);
}
close(DATA);
@reversenews = reverse @news;
push (@reversenews, $line);
@news = reverse @reversenews;
löschen und schreiben:
@news = <DATA>;
unshift @news, $line;
$param{'text'} = ~ s/\n/<br>/g;
Ohne Leerzeichen:
$param{'text'} =~ s/\n/<br>/g;
open(DATA,">$data") || print "Cannot open datafile for writing";
open (..) or die "Can't open datafile for writing: $!";
$i = 0;
while ($i < $display)
{
if ($i == ($display -1))
{
chomp $news[$i];
}
print DATA $news[$i];
$i += 1;
}
close(DATA);
Hm, keine Ahnung, was dieser Block eigentlich machen soll. Ich blicke
da nicht so ganz durch. Warum schreibst du hier im Datafile rum?
[...]
Ich hoffe ihr versteht mein Problem und könnt mir weiterhelfen...
Mach erstmal die Fehler aus deinem Programm raus und versuch es dann
nochmal.
bye, Frank!