Bonjour,
tout d'abord je suis débutant en PERL.
J'ai un souci que je n'arrive pas à expliquer, je fais des tests de condition pour définir le dernier jour du mois d'avant la date système et lorsque je veux tester pour les mois : 08 09 10 11
cela ne fonctionne plus, pourriez vous m'aider s'il vous plait.
voici mon code qui fonctionne :
Et maintenant il ne fonctionne plus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 my ($secondes, $minutes, $heures, $jour_mois, $mois, $an, $jour_semaine, $jour_calendaire, $heure_ete) = localtime(time); $minutes = sprintf("%02d",$minutes); $heures = sprintf("%02d",$heures); $jour = sprintf("%02d",$jour_mois); $mois_avant = sprintf("%02d",$mois); $mois = sprintf("%02d",$mois+1); if ($mois_avant == 0){ $mois_avant = 12; $dernierjour = 31; } elsif (($mois_avant == 01)||($mois_avant == 03)||($mois_avant == 05)||($mois_avant == 07)){ $dernierjour = 31; } elsif (($mois_avant == 04)||($mois_avant == 06)){ $dernierjour = 30; } elsif ($mois_avant == 02){ $dernierjour = 28; } $an = sprintf("%04d",$an+1900); $startdate= '01/'.$mois_avant."/".$an; $enddate= $dernierjour.'/'.$mois_avant."/".$an; $fname = $dernierjour."_".$mois_avant; # modification du sql if (!-d "sql"){ mkdir("sql"); } open(O,">sql/$fname.sql");
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 my ($secondes, $minutes, $heures, $jour_mois, $mois, $an, $jour_semaine, $jour_calendaire, $heure_ete) = localtime(time); $minutes = sprintf("%02d",$minutes); $heures = sprintf("%02d",$heures); $jour = sprintf("%02d",$jour_mois); $mois_avant = sprintf("%02d",$mois); $mois = sprintf("%02d",$mois+1); if ($mois_avant == 0){ $mois_avant = 12; $dernierjour = 31; } elsif (($mois_avant == 01)||($mois_avant == 03)||($mois_avant == 05)||($mois_avant == 07)||($mois_avant == 08)){ $dernierjour = 31; } elsif (($mois_avant == 04)||($mois_avant == 06)){ $dernierjour = 30; } elsif ($mois_avant == 02){ $dernierjour = 28; } $an = sprintf("%04d",$an+1900); $startdate= '01/'.$mois_avant."/".$an; $enddate= $dernierjour.'/'.$mois_avant."/".$an; $fname = $dernierjour."_".$mois_avant; # modification du sql if (!-d "sql"){ mkdir("sql"); } open(O,">sql/$fname.sql");![]()
Partager