Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Nouveau membre du Club
    Erreur "Not a GLOB reference" lors de l'envoi d'un mail
    Bonjour,
    Toujours dans l'optique d'envoyer des mails avec Perl, j'ai pu enfin installer des modules (en migrant sous Linux). J'ai trouvé le code de Jedaï posté sur un autre post de ce forum avec ce code (que j'ai adapté à mon cas) :
    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
    #!/usr/bin/perl
    use strict; use warnings;
    use Net::SMTP::SSL;
    my $smtps = Net::SMTP::SSL->new('smtp.free.fr', Port => 465);
    die "$!" unless defined $smtps;
    $smtps->auth('GTristan', 'OTristan');
    $smtps->mail('nemoz.t25@gmail.com');
    $smtps->to('tristan.nemoz@hotmail.fr');
    my $ok = $smtps->data(<<EOM);
    To: tristan.nemoz@hotmail.fr
    From: nemoz.t25@gmail.com
    Subject: test
     
    Test ?!
    EOM
     
    if( $ok ) {
      print "Message envoyé\n";
    }
    else {
      print "Problème... $!";
    }
    $smtps->quit;


    J'ai installé le module Net::SMTP::SSL, ainsi que le module IO::Socket::SSL.
    Pourtant, quand je lance le script, voici ce qui se passe dans le terminal :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    root@kali:~/Desktop/Perl# perl Mail.pl
    Not a GLOB reference at /usr/local/share/perl/5.14.2/Net/SMTP/SSL.pm line 16.
    Compilation failed in require at Mail.pl line 4.
    BEGIN failed--compilation aborted at Mail.pl line 4.

    D'habitude, lorsque je fais mes scripts moi-même (bon ils sont bien plus simples, je vous l'accorde), j'arrive à trouver le problème en lisant l'erreur. Sauf que là, même l'erreur je ne la comprend pas. Est-ce que cela vient d'un module que je n'ai pas installé ?
    Merci d'avance

  2. #2
    Membre régulier
    ça peut vouloir dire que le module attend une référence, c'est à dire un scalaire plutot qu'un tableau ou autre chose ..

    Je me demande s'il ne faudrait pas mettre des guillemets a 'Port' => '465'
    mais bon, je ne connais pas ce module

  3. #3
    Nouveau membre du Club
    Salut,
    Désolé de ne pas t'avoir répondu plus tôt, j'ai pas mal de travail en ce moment :/
    En tout cas, merci de ta réponse, je vais essayer de changer ce que tu m'as dit puis chercher de mon côté. Dans tous les cas, si je trouve quelque chose, je reviendrai poster ici.
    Merci encore