Je suis en train de faire un petit panel, et je rencontre un petit soucis en perl...
Dans une liste d'options sur la page, je souhaite donner les différentes valeurs par une fonction get_options()
Cette fonction me permet de renvoyer la chaine de caractère correspondant aux options du champ qui va bien.
Ex : get_options('ComPort') doit retourner 'Com1','Com2'...
Le problème est que la chaine 'ComPort' n'arrive jamais à ma fonction !
Dans le code suivant
- Code: Tout sélectionner
sub get_value {
my $fm = shift;
my $item = shift;
print $fm;
print $item;
return ($db->get('hylafax')->prop($item));
}
les deux print me retournent le handle du CGI, et la valeur de la variable d'appel
Ex : get_value('FaxNumber') produit le print FaxNumber
Mais dans le code suivant :
- Code: Tout sélectionner
sub get_options {
my $fm = shift;
my $item = shift;
print $fm;
print $item;
if ( $item eq 'ModemSpeed' )
{
return {' 9600' => ' 9600',
'14400' => '14400',
'19200' => '19200',
'38400' => '38400'
};
}
elsif ( $item eq 'ComPort' )
{
return {'Com1' => '/dev/ttys0',
'Com2' => '/dev/ttys1'
};
}
}
L'appel à get_options('ComPort') devrait produire un print de 'ComPort'. Au lieu de cela la fonction ne retourne que le handle, et pas l'option choisie
Quelqu'un a une idée ?