PHPMailer Anhnag

crazy_chicken

Erfahrenes Mitglied
Hallo Zusammen,

ich benutze zum ersten mal PHPMailer und will damit mehrere Anhänge vershicken:

PHP:
//Es sind max 10 Anhänge
for($i=1; $i<=10; $i++){
    if(is_uploaded_file($_FILES['bild'.$i]['tmp_name'])){
        $anhangTmp["name"] = $_FILES['bild'.$i]['name']; 
        $anhangTmp["size"] = $_FILES['bild'.$i]['size']; 
        $anhangTmp["type"] = $_FILES['bild'.$i]['type']; 
        $anhangTmp["data"] = implode("",file($_FILES['bild'.$i]['tmp_name']));
        $anhang[]          = $anhangTmp;
    }
}

$mail             = new PHPMailer();

for($i=1; $i<count($anhang); $i++){

      //Wie kann ich hier die Anhänge anhängen, geht das irgendwie?
     $mail->AddAttachment($anhang[$i]);
}


Frage ist im Code.

Danke im Voraus!
 
Zuletzt bearbeitet:
Glaube, der Wert, den du brauchst (tmp_name), ist der einzige, den du dir in der ersten Schleife zerstörst. :)
 
Okay, danke, so habe ich das gelöst.
PHP:
for($i=1; $i<=10; $i++){
    if(is_uploaded_file($_FILES['bild'.$i]['tmp_name'])){
        $anhangTmp["name"] = $_FILES['bild'.$i]['tmp_name'];
        $anhangTmp["type"] = $_FILES['bild'.$i]['type'];  
        $anhang[]          = $anhangTmp;
    }
}


$mail             = new PHPMailer();
        for($i=0; $i<count($anhang); $i++){
            $mail->AddAttachment($anhang[$i]['name'], "name", "base64", $anhang[$i]['type']);
}




eine andere Frage, wenn ich in der 2-ten schleife das stehen habe, funktionert das nicht, weiß jemand wieso?


PHP:
$mail->AddAttachment($anhang[$i][0], "name", "base64", $anhang[$i][1]);


Danke!
 
Es gibt in PHP-Arrays keine numerische Entsprechung für nicht-numerische Indizes. Es funktioniert einfach nicht so.

PHP:
<?php

$a = array(
    'name' => 'foo',
    'type' => 'bar'
);

$a[0] = 'baz';
$a['1'] = 'boz';

foreach ($a as $key => $value) {
    printf("%s (%s) => %s\n", $key, gettype($key), $value);
}

Ausgabe:

Code:
name (string) => foo
type (string) => bar
0 (integer) => baz
1 (integer) => boz

Man beachte, dass aus '1' ein Integer geworden ist.
 
Zuletzt bearbeitet:
Zurück