Strohhalm

Sprung zu Navigation. Sprung zu Privat. Sprung zu StyleSwitcher. Sprung zum Inhalt.

 

Sprung zu Navigation. Sprung zu Privat. Sprung zu StyleSwitcher. Sprung zum Inhalt.

Privat

 

Anmelde-Formular



Als Strohhalm-Mitglied registrieren.

 

Sprung zu Navigation. Sprung zu Privat. Sprung zu StyleSwitcher. Sprung zum Inhalt.

Sprung zu Navigation. Sprung zu Privat. Sprung zu StyleSwitcher. Sprung zum Inhalt.

Archiv

 

strohhalm.org / Archiv / Server & Hardware / Eintrag lesen

File-Versand per Online-Formular #Problem#

  1. File-Versand per Online-Formular #Problem#

    LuvShining 08. Dezember 2004, 15:09

    Hallöchen,

    ich habe derzeit ein kleines, aber doch sehr nerviges Problem mit Formular.

    Über das Formular soll der User die Möglichkeit haben mir ein Bild per eMail mitzusenden.
    Das klappt auch prima - zumindest was den Dateianhang betrifft, der ist dabei. Dummerweise nur wird mir die Email immer ohne den restlichen Inhalt wie z.B. $name, $telefon, $text usw. übermittelt.
    Sobald ich über das selbe Formular eine Nachricht ohne Anhang versende klappt es prima. Dann werden auch alle Variablen übergeben.

    Es ist sicherlich ein ganz simpler Fehler- aber ich finde ihn nicht

    Hat wohl jemand einen Tipp für mich Ich würde mich sehr freuen!

    // Überprüfungen der zu übermittelnden Daten:
    unset($errors);
    if ($_FILES['anhang']['size'] > $max_attach_size) $errors[] = "Anhang zu groß (".number_format($_FILES['anhang']['size']/1000,0,",","")." KB) - Maximale Größe: ".number_format($max_attach_size/1000,0,",","")." KB";

    // Wenn Anhang, dann MIME-Mail erstellen:
    if (isset($_FILES['probe']['name']) && trim($_FILES['probe']['name']) != "")
    {

    // Datei einlesen und codieren:
    $datei_content = fread(fopen($_FILES['anhang']['tmp_name'],"r"),filesize($_FILES['anhang']['tmp_name']));
    $datei_content = chunk_split(base64_encode($datei_content),76,"\n");

    // Boundary festlegen:
    $boundary = md5(uniqid(rand()));

    // Anhang:
    $mail_header .= "\n--".$boundary;
    $mail_header .= "\nContent-Type: ".$_FILES['anhang']['type']."; name=\"".$_FILES['anhang']['name']."\"";
    $mail_header .= "\nContent-Transfer-Encoding: base64";
    $mail_header .= "\nContent-Disposition: attachment; filename=\"".$_FILES['anhang']['name']."\"";
    $mail_header .= "\n\n".$datei_content;

    // Ende:
    $mail_header .= "\n--".$boundary."--";

    // Sende E-Mail und gebe Fehler bzw. Bestaetigung aus
    if (@mail($mailto,"Betreffzeile XY,"
    Inhalt der EMail... leider immer leer, es sei denn, es wird ohne eine Mail ohne Anhang verschickt.
    ",$mail_header))
    $sent = true;
    else $errors[] = "FEHLER!";
    }

    // kein Anhang, normale E-Mail:
    else
    {
    $mail_header = "Von: ".$mail_name." <".$mail_email.">\n";
    $mail_header .= "Content-Type: text/plain";
    if (@mail($mailto,"Betreffzeile XY ohne Bildanhang", "
    Vollständiger Name: $vorname $name
    Anschrift: $anschrift
    eMailanschrift: $mail
    usw.
    ------------------------------------------"
    )) $sent = true; else $errors[] = "FEHLER";
    }

    Vielen Dank vorab für eure Hilfe!
    Nadine

  2. Re: File-Versand per Online-Formular #Problem#

    wahsaga 08. Dezember 2004, 15:50

    warum packst du den anhang in den mailheader?

    der sollte doch wohl mit in den inhalt gehören, würde ich meinen.

 
Nach oben springen

.(c) 2002 - 2014 strohhalm.org Community.Server powered by Manitu.Software powered by Mathias Bank
.Impressum + Team.Datenschutz