Ich habe einiges versucht, aber bei mir liefert immer nur den Wert 1 zurück. Selbst wenn 10, 20,... Zeilen ausgegeben werden.Cremator hat recht, dass natürlich das Ergebnis in &results() ausgegeben wird. Aber selbst da bekomm ich es nicht hin, dass ich die Anzahl der Zeilen ($line) erhalte. hier noch mal mein Versuch, Ich habe den Zähler $i = 1 vor die beiden 'Wege' oder / und gestellt.
Zum Schluß habe ich die sub results () auch mal angehängt.
@CONTENT = <CONTENT_FILE>;
$all = @CONTENT;
close(CONTENT_FILE);
for($m=0; $m<@CONTENT && $flag_page < 1000; $m++) {
$line=$CONTENT[$m]; # Remove html tags from $line
$line =~ s/<(.*?)>/\.\.\./g;
$i=1;
if ($FORM{'boolean'} eq 'oder'){
foreach $text (@texts) {
$i;
if($line =~ /$text/){
# Highligt the text found
$line=~ s/$text/<b>$text<\/b>/g;
&result;
}
$i = $i++;
}
}
elsif ($FORM{'boolean'} eq 'und'){
if($line =~ /@texts[0]/) {
if ($line =~ /@texts[1]/) {
if ($line =~ /@texts[2]/) {
if ($line =~ /@texts[3]/) {
if ($line =~ /@texts[4]/) {
# Highligt the text found
foreach $text (@texts) {
$i;
$line=~ s/$text/<b>$text<\/b>/g;
}
&result;
$i = $i++;
}
}
}
}
}
}
}
sub result {
$counter = $counter + 1;
# Prints this record looping throug the template
for($tpline=$loopstart; $tpline<$loopend && $flag_page == 0; $tpline++)
{
$linet=$TEMPLATE[$tpline];
$linet =~ s/##DESCRIPTION##/$PARTS[1]/gi;
$linet =~ s/##URL##/$PARTS[0]/gi;
$linet =~ s/##NUM##/$i/gi;
$linet=~ s/##ALL##/$all /gi;
print $linet;
}
print "<td width=\"50%\">";
print "<font face=\"Arial\" size=\"2\">";
print $line;
print"<br>";
print "<\/font>";
print "<\/td>";
print "<\/tr>";
$flag_page = $flag_page+1;
if ($flag_page == 2) {$counter--;}
$flag_any = 1;
Ausgegeben werden soll die Anzahl in der Zeile $linet =~ s/##NUM##/$i/gi; im sub result
Wenn ihr wollt, kann ich gerne den ganzen Code hier posten.
Gruß Georges
Datum: 07.02.2005-00:49
