Det beror helt på du har dem ordnade. Ett per rad, eller är de separerade med något?
Hur gör man för att räkna inlägg på bästa sätt.
16 svar · 393 visningar · startad av Kent
Hur gör man för att räkna inlägg på bästa sätt.
Det beror helt på du har dem ordnade. Ett per rad, eller är de separerade med något?
Ett per rad.
Nope vill inte funka.
Kan man få se hur koden, som inte vill fungera, ser ut?
Funkar hur fint som helst,
tack för hjälpen.
Får ursäkta om jag verkar trög, men Gislaved.net's och Csson's kodexempel var likadana. Så antagligen var det du (Kent) som gjorde fel.
Jupp, det var i samma sak... bara att jag skrev lite mer utförligt. Det är inte så lätt att vara ny alla gånger...
Om man vill räkna enstaka (html) filer, hur ser koden ut för det.
Va? Vad menar du?
Jo, jag använder mig av forumet från matts script arcive, och då sparas alla filer som .html, det jag vill göra nu är att räkna dessa så man ser hur många inlägg det finns i forumet.
Större delar av scriptet är hämtat ifrån Matt's script archive.
#!/usr/bin/perl
$sokvag = '/katalog där html-filerna ligger/';
@filer = ('*.html','*.shtml');
$antal=0;
chdir($sokvag);
foreach $file (@filer) {
$antal++;
$ls = `ls $file`;
@ls = split(/\s+/,$ls);
foreach $temp_file (@ls) {
if (-d $file) {
$filename = "$file$temp_file";
if (-T $filename) {
push(@FILES,$filename);
}
}
elsif (-T $temp_file) {
push(@FILES,$temp_file);
}
}
}
print "Content-type: text/html\n\n";
print "$antal";
exit;
Nej denna kod funkar inte, det står bara Antal inlägg: 2,
oavsett hur många inlägg jag skriver.
Kan man få se koden?
Hej Kent!
Testa följande kod.
#!/usr/bin/perl
$Dir = "/min/path/";
$Filer = 0;
opendir(DIR, $Dir);
while (defined($Fil = readdir(DIR))) {
next unless $Fil =~ /\.(htm|html|shtm|shtml)$/i;
$Filer++;
}
closedir(DIR);
print "Content-type: text/html\n\n";
print "Det finns $Filer inlägg.\n";
//Hansen