Thread viele EMails senden (15 answers)
Opened by Gustl at 2012-06-11 08:46

Gustl
 2012-08-01 19:04
#160458 #160458
User since
2011-01-27
441 Artikel
BenutzerIn
[Homepage]
user image
Javascript soll ja nur email_send-skript im Hintergrund starten wenn emails zu senden sind. Deshalb die lösung mit den hidden. Oder geht das auch anders? Ich könnte natürlich auch direkt einen javascript in html ausgeben und dort dann die variable setzen. das stimmt. Aber eine andere Lösung fällt mir jetzt nicht ein.

Besorgt bin ich dann "nur" bei dem insert von 200 Datensätzen, da dies ja auch "etwas" länger dauern und das geht dann auf die Wartezeit vom Benutzer.

Mit fork habe ich es so probiert:
Code (perl): (dl )
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
sub test(){
  my @b;
  
  foreach(1..10){
    $b[$_]->{send_to} = "gustl1und1\@online.de";
    $b[$_]->{username} = "Gustl";  
  }   
  send_emails(\@b);
           
}

sub send_emails{
  my @mail = @{$_[0]};
  my $type = $_[1];
  
  my $mailprog = '/usr/lib/sendmail';                   
   my $pid = undef;
  foreach(@mail){
    
    if (defined($pid = fork)) {
      if ($pid) { #Eltern
        #print "Eltern: Kind $i ($pid) gestartet \n";
        } else {    #Kind
           my $mailfrom = $Glob::mailfrom_support;
      my $name     = "TRAIN your programmer Support";
      my $subject  = "TRAIN your programmer - Test";
      my $body     = "TEXTE TEXT TEXT TEXT!";
    
      open (MAIL, "|$mailprog $_->{send_to}") || die "Cant open $mailprog!\n";
      print MAIL ("To: $_->{send_to}\n");
      print MAIL ("From: $name <$mailfrom>;\n");
      print MAIL ("Subject: $subject\n\n");
      print MAIL ("$body");
      close (MAIL);
          last;
       }
    }  
  }
}


Dann rufe ich test() auf, aber dann sehe ich 10x mein content auf einer Seite. was ja klar ist, weil der Kindprozess alles vom ELternprozess übernimmt.
Somit müsste ich ein eigenes Script schreiben welchem dann das gesamte email_array als parameter übergeben wird. Aber das geht ja nicht, da der GET ja eine Begrenzung hat, somit könnten emails verloren gehn.

Deshalb favorisiere ich im Moment die AJAX-Lösung.

View full thread viele EMails senden