PDA

Visualizza la versione completa : modifica valore partenza contatore CGI


neutrale
08-04-2005, 16:40
Ciao!
C' qualcuno che sa modificare questo cgi di contatore visite in modo da modificarne il numero /valore di partenza?

#!/usr/bin/perl




$lunghezza = 1;
$altezzapixel = 1;

$contrastoNeroBianco = 0;

$blocco = 5;
$percorsoCgi = $ENV{QUERY_STRING};


&azioneFinale;

&aumentoConteggio;

&creoBmp;
&scrivoBmp;

exit(0);


sub scrivoBmp {
print ("Content-type: image/x-xbitmap\n\n");
if ($altezzapixel) {
printf ("#define count_width %d\n#define count_height 16\n",
$dimensioneL*8);
}
else {
printf ("#define count_width %d\n#define count_height 10\n",
$dimensioneL*8);
}
printf STDOUT "static char count_bits[] = {\n";
for($i = 0; $i < ($#bytes + 1); $i++) {
print("0x$bytes[$i]");
if ($i != $#bytes) {
print(",");
if (($i+1) % 7 == 0) {
print("\n");
}
}
}
print("};\n");
}


sub creoBmp {
$conto = $sommaRilevati;
@bytes = ();
$dimensioneL = length($conto) > $lunghezza ? length($conto) : $lunghezza;
$contoFormattato = sprintf("%0${len}d",$conto);
if ($altezzapixel) {
for ($i = 0; $i < $dimensioneL*3; $i++ ) {
if ($contrastoNeroBianco) {
push(@bytes,"ff");
}
else {
push(@bytes,"00");
}
}
}
for ($y=0; $y < 10; $y++) {
for ($x=0; $x < $dimensioneL; $x++) {
$cifre = substr($contoFormattato,$x,1);
if ($contrastoNeroBianco) {
$byte = substr(@biancoSuNero[$cifre],$y*3,2);
}
else {
$byte = substr(@neroSubianco[$cifre],$y*3,2);
}
push(@bytes,$byte);
}
}
if ($altezzapixel) {
for ($i = 0; $i < $dimensioneL*3; $i++ ) {
if ($contrastoNeroBianco) {
push(@bytes,"ff");
}
else {
push(@bytes,"00");
}
}
}
}

sub azioneFinale {

@biancoSuNero = ("c3 99 99 99 99 99 99 99 99 c3", # 0
"cf c7 cf cf cf cf cf cf cf c7", # 1
"c3 99 9f 9f cf e7 f3 f9 f9 81", # 2
"c3 99 9f 9f c7 9f 9f 9f 99 c3", # 3
"cf cf c7 c7 cb cb cd 81 cf 87", # 4
"81 f9 f9 f9 c1 9f 9f 9f 99 c3", # 5
"c7 f3 f9 f9 c1 99 99 99 99 c3", # 6
"81 99 9f 9f cf cf e7 e7 f3 f3", # 7
"c3 99 99 99 c3 99 99 99 99 c3", # 8
"c3 99 99 99 99 83 9f 9f cf e3"); # 9

@neroSubianco = ("3c 66 66 66 66 66 66 66 66 3c", # 0
"30 38 30 30 30 30 30 30 30 30", # 1
"3c 66 60 60 30 18 0c 06 06 7e", # 2
"3c 66 60 60 38 60 60 60 66 3c", # 3
"30 30 38 38 34 34 32 7e 30 78", # 4
"7e 06 06 06 3e 60 60 60 66 3c", # 5
"38 0c 06 06 3e 66 66 66 66 3c", # 6
"7e 66 60 60 30 30 18 18 0c 0c", # 7
"3c 66 66 66 3c 66 66 66 66 3c", # 8
"3c 66 66 66 66 7c 60 60 30 1c"); # 9
}
sub aumentoConteggio {
&aumentoLettura;
}


sub aumentoLettura {
if (-e $percorsoCgi) {
open(COUNT,"$percorsoCgi") || die("Non apro $percorsoCgi: $!\n");
}
$sommaRilevati = <COUNT>;

close(COUNT);

$sommaRilevati++;
open(COUNT,">$percorsoCgi") || die "$0: can\'t open $percorsoCgi: $!\n";
print (COUNT "$sommaRilevati\n");
close(COUNT);


}5


Grazie mille!!

shishii
08-04-2005, 17:20
Ciao,

iserisci sotto:


$lunghezza = 1;
$altezzapixel = 1;

$contrastoNeroBianco = 0;

$blocco = 5;
$percorsoCgi = $ENV{QUERY_STRING};

la stringa:


$sommaRilevati = numero che vuoi;

neutrale
11-04-2005, 11:37
Ho provato, ma non funge....Uff, mi serve un contatore visite gratuito e facile, senza usare asp o altri linguaggi lato server.
Come posso fare? :dh: :bh:

Loading