Johannes.Lichtenberger: Modul Mail::IMAPClient

Hallo,

folgender Code liefert unten genannte Warnungen:

foreach my $f ($imap->folders) {  
  print "The $f folder has ",  
    $imap->unseen_count($f)||0, " unseen messages.\n";  
  
  my @unread = $imap->unseen;  
  
  foreach my $msg (@unread) {  
    my $from = $imap->get_header($msg,"From");  
    $mailcount{$from}++;  
  }  
}

Use of uninitialized value $msg in concatenation (.) or string at Mail/IMAPClient.pm line 2179.
Use of uninitialized value $msgspec in hash element at Mail/IMAPClient.pm line 2237.
Use of uninitialized value $from in hash element at imap.pl line 24.

Ich sehe dabei jetzt keinen Fehler :-/

Viele Grüße,
Johannes

  1. Hallo,

    folgender Code liefert unten genannte Warnungen:

    foreach my $f ($imap->folders) {

    print "The $f folder has ",
        $imap->unseen_count($f)||0, " unseen messages.\n";

    my @unread = $imap->unseen;

    foreach my $msg (@unread) {
        my $from = $imap->get_header($msg,"From");
        $mailcount{$from}++;
      }
    }

    
    >   
    > Use of uninitialized value $msg in concatenation (.) or string at Mail/IMAPClient.pm line 2179.  
    > Use of uninitialized value $msgspec in hash element at Mail/IMAPClient.pm line 2237.  
    > Use of uninitialized value $from in hash element at imap.pl line 24.  
      
    Zeile 24 ist die Zuweisung des Hashes: $mailcount{$from}++;
    
    1. Moin Moin!

      »» folgender Code liefert unten genannte Warnungen:
      »»
      »» ~~~perl

      foreach my $f ($imap->folders) {

      »»   print "The $f folder has ",
      »»     $imap->unseen_count($f)||0, " unseen messages.\n";
      »»
      »»   my @unread = $imap->unseen;

      unseen() bezieht sich auf den per select() ausgewählten Ordner. Du wählst keinen Ordner aus. Das Ergebnis ist daher undefiniert.

      »»
      »»   foreach my $msg (@unread) {

      (Stil: @unread enthält keine Messages, sondern Message Sequence Numbers.)

      »»     my $from = $imap->get_header($msg,"From");

      Was passiert, wenn eine Message keinen From-Header enthält (das sollte nicht passieren, aber es KÖNNTE passieren)?

      »»     $mailcount{$from}++;
      »»   }
      »» }

      
      > »»  
      > »» Use of uninitialized value $msg in concatenation (.) or string at Mail/IMAPClient.pm line 2179.  
        
      @unread entält ein undefiniertes Element, vermutlich weil unseen ohne ausgewählten Ordner aufgerufen wurde.  
        
      
      > »» Use of uninitialized value $msgspec in hash element at Mail/IMAPClient.pm line 2237.  
        
      Folgefehler.  
        
      
      > »» Use of uninitialized value $from in hash element at imap.pl line 24.  
        
      Folgefehler.  
        
      
      > Zeile 24 ist die Zuweisung des Hashes: $mailcount{$from}++;  
        
      Alexander
      
      -- 
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".