20120929
1 2 3 4 5 6 7 8 9 10 11 12 13
my $yearcheck = "" my $monthcheck = "" my $daycheck = "" $yearsplitt = substr($statusdatum,0,3); # 2011 $monthsplitt = substr($statusdatum,4,5); # 09 $daysplitt = substr($statusdatum,6,7); # 29 if ($yearsplitt < $yeartoday) {$yearcheck = 1;} if ($monthsplitt <= $monthtoday) {$monthcheck = 1;} if ($daysplitt <= $daytoday) {$daycheck = 1;} if ($yearcheck = 1 and $monthcheck = 1 and $daycheck = 1) {Treffer}
1 2 3 4 5 6 7
use DateTime; my $one_year = DateTime->now->subtract( years => 1 ); my $ymd = $one_year->ymd(""); # in der datenbankabfrage: my $sth = $dbh->prepare("SELECT ... WHERE date < ?"); $sth->execute($ymd);
use Date::Calc;
$datetoday = $Jahr.$Monat.$Monatstag;
1 2 3
my $datetody = $Jahr.$Monat.$Monatstag; my $minoryear = substr($datetody,0,4) - 1; $minoryear = $minoryear.$Monat.$Monatstag;
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
47
48
use Date::Calc qw(
Days_in_Year
Days_in_Month
Weeks_in_Year
leap_year
check_date
check_business_date
Day_of_Year
Date_to_Days
Day_of_Week
Week_Number
Week_of_Year
Monday_of_Week
Nth_Weekday_of_Month_Year
Standard_to_Business
Business_to_Standard
Delta_Days
Delta_DHMS
Add_Delta_Days
Add_Delta_DHMS
Add_Delta_YMD
System_Clock
Today
Now
Today_and_Now
Easter_Sunday
Decode_Month
Decode_Day_of_Week
Decode_Language
Decode_Date_EU
Decode_Date_US
Compress
Uncompress
check_compressed
Compressed_to_Text
Date_to_Text
Date_to_Text_Long
Calendar
Month_to_Text
Day_of_Week_to_Text
Day_of_Week_Abbreviation
Language_to_Text
Language
Languages
Decode_Date_EU2
Decode_Date_US2
Parse_Date
);
2012-09-29T13:31:04 ?Das DateTime bekomm ich nicht installiert! *gumpfffff*
QuoteDie Jahresabfrage oder länger als ein Jahr klappt jetzt - Danke!
Sieht ein bischen wild aus, aber funktioniert:
Code (perl): (dl )1 2 3my $datetody = $Jahr.$Monat.$Monatstag; my $minoryear = substr($datetody,0,4) - 1; $minoryear = $minoryear.$Monat.$Monatstag;
1 2 3 4
my ($year,$month,$day) = Add_Delta_Days($Jahr,$Monat,$Monatstag, -14); my $minorday = $year.$month.$day; print "$year,$month,$day";
2012-09-29T14:39:19 ?PS.: zu DateTime
Keine Fehlermeldung. Das Paket von CPAN stimmt nicht. Normal steckt im entpacktem Zeugs eine Makeperl.pl drin. Dort war nur ein Build.pl drin, die sich aber nicht installieren lies. Egal, wenn das mit Date::Calc auch geht - so sei es denn...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
my ($year,$month,$day) = Today(); my ($year,$month,$day) = Add_Delta_Days($year,$month,$day, -14); if ($month eq "1") {$month = "01";} if ($month eq "2") {$month = "02";} if ($month eq "3") {$month = "03";} if ($month eq "4") {$month = "04";} if ($month eq "5") {$month = "05";} if ($month eq "6") {$month = "06";} if ($month eq "7") {$month = "07";} if ($month eq "8") {$month = "08";} if ($month eq "9") {$month = "09";} if ($day eq "1") {$day = "01";} if ($day eq "2") {$day = "02";} if ($day eq "3") {$day = "03";} if ($day eq "4") {$day = "04";} if ($day eq "5") {$day = "05";} if ($day eq "6") {$day = "06";} if ($day eq "7") {$day = "07";} if ($day eq "8") {$day = "08";} if ($day eq "9") {$day = "09";} my $minorday = $year.$month.$day;
2012-09-29T16:08:59 ?Diese Seite hat mir schon pq verlinkt. Aba datt geht so net!
Nein ohne Scherz. Mein Ubuntu kennt kein get apt usw... bzw. das geht nur, wenn die Ubuntulibs das bereitstellt. Und da ich altes System, hab ich auch eine magere Library...
2012-09-29T16:08:59 ?
Code (perl): (dl )1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24my ($year,$month,$day) = Today(); my ($year,$month,$day) = Add_Delta_Days($year,$month,$day, -14); if ($month eq "1") {$month = "01";} if ($month eq "2") {$month = "02";} if ($month eq "3") {$month = "03";} if ($month eq "4") {$month = "04";} if ($month eq "5") {$month = "05";} if ($month eq "6") {$month = "06";} if ($month eq "7") {$month = "07";} if ($month eq "8") {$month = "08";} if ($month eq "9") {$month = "09";} if ($day eq "1") {$day = "01";} if ($day eq "2") {$day = "02";} if ($day eq "3") {$day = "03";} if ($day eq "4") {$day = "04";} if ($day eq "5") {$day = "05";} if ($day eq "6") {$day = "06";} if ($day eq "7") {$day = "07";} if ($day eq "8") {$day = "08";} if ($day eq "9") {$day = "09";} my $minorday = $year.$month.$day;
Quoteoh gott...
2012-09-29T16:33:23 ?Thema cpan:
Ich sagte doch er bricht ab. Die Fehlerliste stell ich lieber nicht rein weil zu lange und zu vertraulich!
2012-09-29T17:14:15 pq2012-09-29T16:33:23 ?Thema cpan:
Ich sagte doch er bricht ab. Die Fehlerliste stell ich lieber nicht rein weil zu lange und zu vertraulich!
das hab ich selten erlebt. du magst keine perl basics lernen (die tutorials kosten kein geld), du magst die verwendung von cpan nicht lernen, du magst keine fehlermeldungen posten (auch wenn man diese kürzen kann und vetrauliche informationen ersetzen kann). na dann viel glück noch in zukunft. mir fällt jedenfalls nicht mehr ein, wie ich dir in zukunft noch helfen könnte.
2012-09-29T18:33:11 hlubenowWahrscheinlich sollte man dann ein aktuelleres Perl in "/home/user" dazuinstallieren, aber das ist ja auch nicht gerade eine Anfängeraufgabe. Obwohl ich's mal gemacht hab' und überrascht war, wie leicht das war und wie gut das aktuelle Perl auf meiner alten Kiste durchkompilierte.
2012-09-29T14:39:19 ?Hallo Leute
Statt-> 20120905
kommt-> 2012 9 5 (führende Nullen Fehlen)
Muss ich das jetzt mit mehreren If-Anweisungen prüfen und die Null mit "Gewahlt" reinklopfen, oder gehts auch einfacher?