

Anmelde-Formular

Strohhalm Spendenkonto
Konto-Inhaber: Mathias Bank
Konto-Nummer: 83 04 297
BLZ: 200 905 00
Kreditinstitut: Netbank AG
Hinweis: Die Spenden werden bis auf weiteres ausschließlich dafür eingesetzt, den Strohhalm gegen rechtliche Angriffe zu schützen. Ein anderer Verwendungszweck muss von der gesamten Administration genehmigt werden.
aktueller Spendenstand: 188.01 €

strohhalm Standard (aktiv) von baumeister
(Noch keine User-Stylesheets vorhanden)
Hinweis: Zum Wechseln der Styles muss ein Cookie akzeptiert werden. Jedes registrierte Community-Mitglied darf eigene Styles entwickeln und einreichen. Ausführliche Infos unter Styleswitcher-Hilfe.
Neue Styles an baumeister@strohhalm.org senden.

strohhalm.org / Archiv / Server & Hardware / Eintrag lesen
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
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.