Bonjour
J'ai une page .shtml avec un menu:
Je viens d'écrire un script qui permet de compter le nombre de scripts présents dans un seul répertoire et affiche le résultat avec SSI comme le montre l'exemple ci-dessous:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <div id="navigation"> <ul> <li><a href="#m_1">Mes scripts</a> <ul class="sous-menu"> <li><a href="#sm_1_1">Apache ( 0 )</a></li> <li><a href="#sm_1_2">Perl ( 1 )</a></li> </ul> </li> </ul> </div>
Voici le scripts CGI:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <div id="navigation"> <ul> <li><a href="#m_1">Mes scripts</a> <ul class="sous-menu"> <li><a href="#sm_1_1">Apache ( <!--#include virtual="/cgi-bin/comptefic.cgi"--> )</a></li> </ul> </li> </ul> </div>
A ce stade, je compte un seul répertoire. L'objectif étant de compter plusieurs répertoires. J'ai continué à écrire mon script CGI, voici le résultat:
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 #!/usr/bin/perl -w # ne pas oublier un chmod 755 # -- déclarations -- # use strict; use diagnostics; use warnings; use CGI qw(:standard); use CGI::Carp qw(warningsToBrowser fatalsToBrowser); # -- CGI sécurité -- # $CGI::POST_MAX=1024*100; $CGI::DISABLE_UPLOADS=1; # -- variables -- # my $path_apache="/chemin/www/scripts/apache"; my $nbapache; &compte_apache; sub compte_apache { opendir (my $REP,$path_apache); my @tableau=readdir $REP; foreach my $fic (@tableau) { $nbapache++ if (-f "$path_apache/$fic") } closedir $REP; return $nbapache; } # -- résultats -- # print "Content-type: text/html\n\n"; print "$nbapache";
Concernant l'affichage avec SSI, je souhaiterai que cela se présente sous la forme:
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
34
35
36
37
38
39
40
41
42
43
44
45
46 #!/usr/bin/perl -w # ne pas oublier un chmod 755 # -- déclarations -- # use strict; use diagnostics; use warnings; use CGI qw(:standard); use CGI::Carp qw(warningsToBrowser fatalsToBrowser); # -- CGI sécurité -- # $CGI::POST_MAX=1024*100; $CGI::DISABLE_UPLOADS=1; # -- variables -- # my $path_apache="/chemin/www/scripts/apache"; my $path_perl="/chemin/www/scripts/perl"; my ($nbapache,$nbperl); &compte_apache; &compte_perl; sub compte_apache { opendir (my $REP,$path_apache); my @tableau=readdir $REP; foreach my $fic (@tableau) { $nbapache++ if (-f "$path_apache/$fic") } closedir $REP; return $nbapache; } sub compte_perl { opendir (my $REP,$path_perl); my @tableau=readdir $REP; foreach my $fic (@tableau) { $nbperl++ if (-f "$path_perl/$fic"); } closedir $REP; return $nbperl; } # -- résultats -- # print "Content-type: text/html\n\n"; print "$nbapache"; print "$nbperl";
Pour cette partie, je bloque
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <div id="navigation"> <ul> <li><a href="#m_1">Mes scripts</a> <ul class="sous-menu"> <li><a href="#sm_1_1">Apache ( <!--#include virtual="/cgi-bin/comptefic.cgi?id=apache"--> )</a></li> <li><a href="#sm_1_2">Perl ( <!--#include virtual="/cgi-bin/comptefic.cgi?id=perl"--> )</a></li> </ul> </li> </ul> </div>
Un petit coup de main s'il vous plaît ?
Merci
Partager