Toon posts:

cgi script

Pagina: 1
Acties:
  • 47 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik ben bezig met een licentie scriptje dat voor clienten een licentie maakt. Na een aantal uurtjes ploeteren op internet, het lezen van perl manuals en programmer guides heb ik het volgende geschreven (zie hieronder)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
sub gen_lic {
    my($script_url)=@_;
    $script_url=~s{http://} {};
    $script_url=~/^\w*\.(.{4})/;
    my($part1)="$dbcode$1";
    $lic_date=&conv_date(&make_date(localtime));
    $part2=$lic_date;
    my($le)=length($part2);
    $part2=substr($part2,$length-3,3);
    open LICFILE,">$datapath$dbcode"."license".$tmplext || 
        &CgiDie("00999","Open File","Couldn't create registration file");
    $lictext=crypt($part1."ED",$part2);
    print LICFILE unpack "H50",$lictext;
    close LICFILE;
}
sub conv_date   {
    local ($md)=@_;
    local ($mon,$day,$year)=split (m!/!,$md);
    local($julian_day) = &jday($mon,$day,$year);
    return $julian_day;
}
sub make_date {
    my($A,$B,$C,$mday,$mon,$year)=localtime();
    $year=$year+1900;
    $mon++;         # add 1 to month because it starts at 0
    local($mdate)=$mon."/".$mday."/".$year;
    return $mdate;
}
sub jday    {
    # Usage:  $julian_day = &jday($month,$day,$year)
    my($m,$d,$y) = @_;
    my($ya,$c);
    $y = (localtime(time))[5] + 1900  if ($y eq '');
    if ($m > 2) {
        $m -= 3;
    } else {
        $m += 9;
        --$y;
    }
    $c = int($y/100);
    $ya = $y - (100 * $c);
    $jd =  int((146097 * $c) / 4) + int((1461 * $ya) / 4) +int((153 * $m + 2) / 5) + $d + 1721119;
    return $jd;
}

1;


het laatste stukje code komt van een of andere voorbeeld site (was net even te ingewikkeld)

Mijn vraag:
Hoe verander ik de code zodat ik een licentie kan maken die niet in 1900 + jaren verloopt maar 2 jaar later?


P.S hiervoor is geen manual beschikbaar, ik heb het afgelopen uur zitten zoeken en kom er niet uit, mijn laatste beroep hier op GOT!

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

$year=$year+2

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Dit topic is gesloten.