Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2278 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  Programmation perl popup_menu et exécution

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Programmation perl popup_menu et exécution

n°1686385
lavm01
rien n'est impossible
Posté le 14-02-2008 à 15:32:05  profilanswer
 

Bonjour,
 
J'ai écrit un petit programme perl, en gros voici ce que fait le programme: Dans un premier temps je vais lire un répertoire et je mets le nom des fichiers qui se trouve dans le répertoire dans un tableau. Ensuite je fais la création d'un menu déroulant qui contient le nom de mes fichiers (se sont des fichiers *.html).
 
Ce que j'aimerais faire et c'est la que je bloque, c'est quand l'utilisateur sélectionne un nom de fichier dans mon menu déroulant et puis il clique sur OK, je veux qu'il ouvre une autre page avec le contenue de mon fichier html. En principe si je vais voir le code source je devrais voir quelque chose du genre <option value=http://172.27.XX.XXX/tous_unix/tous_unix_2008-01-30.html> tous_unix_2008-01-30.html</option> mais tout ce que je vois c'est <option value="tous_unix_2008-02-13.html">tous_unix_2008-02-13.html</option> mais il ne faut pas oublier que dans mon menu déroulant je veux juste le nom de mes fichiers.
 
Si vous pouviez m'aider.
Merci de me répondre.
 

Code :
  1. #!/usr/bin/perl
  2. use CGI qw/:standard/;
  3. $rep1="D:\\rapports_des_seuils\\Tous_UNIX"; # équivaut à http://172.27.XX.XXX/tous_unix
  4. $i = 0;
  5. opendir(DIR, $rep1) || die "Impossible de lire $rep1 : $!\n";
  6. my @liste = grep { not /^[.][.]?\z/ && -r "$rep1/$_" } readdir(DIR);
  7. @liste = map{lc($_)} @liste;
  8. closedir(DIR);
  9.   print header,
  10.         start_html(-title=>'Rapport des seuils',
  11.         -bgcolor=>'gray',
  12.         ),
  13.         h1('Rapport des seuils'),
  14.         start_form(
  15.         -method=>'POST',
  16.         -action=>'',
  17.         -name=>'form1'
  18.         ),
  19.         "Liste des fichiers Unix ",
  20.         popup_menu(-name=>'menu_name',
  21.                             -values=>[@liste],
  22.                           #  -defaut=>[@liste],
  23.                           #  -onChange=>'Sub_Env()',
  24.                             -labels=>\%labels),p,
  25.         submit('OK'),
  26.         end_form,
  27.         hr;
  28.    if (param()) {
  29.        $nnrep = "http://172.27.96.172/unix/";
  30.        print "Le nom de votre fichier est ",em(param('menu_name')),p,
  31.        hr;
  32.    }

mood
Publicité
Posté le 14-02-2008 à 15:32:05  profilanswer
 

n°1687235
dreameddea​th
Posté le 16-02-2008 à 10:29:00  profilanswer
 

Normal, il manque dans ton

Code :
  1. @liste = map{lc($_)} @liste;

, la concaténation avec l'adresse de base. En effet, le readdir ne rend que le nom du fichier...
 

n°1688101
lavm01
rien n'est impossible
Posté le 18-02-2008 à 21:15:38  profilanswer
 

Je comprends ce que tu veut dire mais si je fais la concaténation avec l'adresse de base, je me retrouve avec un menu déroulant qui contient l'adresse de base plus le nom du fichier. Ce que j'aimerais c'est ceci
<option value=http://172.27.XX.XXX/tous_unix/tous_unix_2008-01-30.html> tous_unix_2008-01-30.html</option> et non comme <option value=http://172.27.XX.XXX/tous_unix/tous_unix_2008-01-30.html> http://172.27.XX.XXX/tous_unix/tou [...] option&gt;
 
Mais je ne sais pas comment faire pour le mettre en paramètre.
 
Merci !

n°1688138
dreameddea​th
Posté le 19-02-2008 à 01:48:03  profilanswer
 

Bah dans ce cas, il faut juste remplir la hash %labels comme il faut...
genre

Code :
  1. map{$labels{$_}=$root_path."$_"}@liste;


Lit la doc CGI
http://search.cpan.org/~lds/CGI.pm-3.33/CGI.pm
 
Au fait, utilise  

Code :
  1. use strict;


Il faut absolument se discipliner via cette bonne pratique


Message édité par dreameddeath le 19-02-2008 à 01:48:37

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Programmation perl popup_menu et exécution

 

Sujets relatifs
envoyer un input-checkbox dans un popup[CSS] Problème pour un menu classique (niveau débutant)
[PERL] Supervisation d'un onduleur et alerteProblême de restriction menu flash par IE
[PERL] besoin de votre aide pour comprendre une variablemenu (onglet) et faire apparaître dans une zone
programmation d'une machine à étatmenu fixe + reste dynamique en CSS
[Resolu] Equivalent de la commande unpack de PHP/Perl en Java[Résolu]Problème avec un menu défilant
Plus de sujets relatifs à : Programmation perl popup_menu et exécution


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR