Hallo,
ich habe ein "kleines" Problem, welches ich selber einfach nicht gelöst bekomme.
ich habe ein Kontaktformular erstellt, nun möchte ich da 2-3 PDF Dateien anhängen
die auf den Server liegen aber alle versuche sind gescheitert, habe es dann mit dem PHPmailer
versucht dort habe ich aber das Problem das ich die zwei Eingabefelder (wiederholte E-Mail) und eine Checkbox nicht prüfen kann.
Ist es möglich nur den PHPmailer so einzubinden das dieser nur für die Dateianhänge zuständig ist
oder gibt es eine einfache Möglichkeit PDF oder TXT Dateien anzuhängen?
wäre nett wenn mir jemand auf die Sprünge helfen kann.
EDIT: bin einen schritt weiter
das habe ich geändert für den txt anhang
doch leider kommt die email so an.
ich habe ein "kleines" Problem, welches ich selber einfach nicht gelöst bekomme.
ich habe ein Kontaktformular erstellt, nun möchte ich da 2-3 PDF Dateien anhängen
die auf den Server liegen aber alle versuche sind gescheitert, habe es dann mit dem PHPmailer
versucht dort habe ich aber das Problem das ich die zwei Eingabefelder (wiederholte E-Mail) und eine Checkbox nicht prüfen kann.
Ist es möglich nur den PHPmailer so einzubinden das dieser nur für die Dateianhänge zuständig ist
oder gibt es eine einfache Möglichkeit PDF oder TXT Dateien anzuhängen?
wäre nett wenn mir jemand auf die Sprünge helfen kann.
PHP:
<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$nname = $_POST['nname'];
$email = $_POST['email'];
$email2 = $_POST['email2'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
$to = '[email protected]';
$checkbox = $_POST['checkbox'];
$human = intval($_POST['human']);
$body =" Name: $name\n Nachname: $nname\n E-Mail: $email\n\n Betreff: $betreff\n Nachricht:\n $nachricht \n ---\n RodMod";
$headers = "From: $email\n";
$headers .= "Reply-To: $email\n";
$headers .= "Content-type: text/plain; charset=UTF-8";
//Prüft ob ein Name eingeben wurde.
if (!$_POST['name']) {
$errName = 'Name eingeben.';
}
//Prüft ob ein Nachname eingeben wurde.
if (!$_POST['nname']) {
$errNname = 'Name eingeben.';
}
//Prüft ob eine E-Mail eingeben wurde.
if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$errEmail = 'E-Mail prüfen.';
}
//Prüft ob eine E-Mail eingeben wurde.
if (!$_POST['email2'] || !filter_var($_POST['email2'], FILTER_VALIDATE_EMAIL)) {
$errEmail2 = 'E-Mail prüfen.';
}
if($email == $email2) {
// Email korrekt.
} else {
// Email nicht korrekt.
$errEmail2 = 'E-Mail prüfen.';
}
//Prüft ob eine Betreff eingeben wurde.
if (!$_POST['betreff']) {
$errBetreff = 'Betreff eingeben.';
}
//Prüft ob eine Nachricht eingeben wurde.
if (!$_POST['nachricht']) {
$errNachricht = 'Nachricht eingeben.';
}
//Einfacher Anti-bot scheck
if ($human !== 9) {
$errHuman = 'Falsche Antwort.';
}
//Prüft die Checkbox
if (!($_POST['checkbox'])) {
$errCheckbox = 'Checkbox Aktivieren.';
}
// Wenn kein Fehler Sende E-Mail.
if (!$errName && !$errNname && !$errEmail && !$errEmail2 && !$errBetreff && !$errNachricht && !$errHuman && !$errCheckbox) {
if (mail ($to, $betreff, $body, $headers)) {
$result='<div class="button warning">Nachricht wurde verschickt.</div>'; echo "<meta http-equiv=\"Refresh\" content=\"3;url=index.html\">";
} else {
$result='<div class="button alert">Nachricht wurde nicht verschickt, versuchen Sie es später noch einmal.</div>';
}
}
}
?>
EDIT: bin einen schritt weiter
das habe ich geändert für den txt anhang
PHP:
<?php
if (isset($_POST["submit"])) {
$name = $_POST['name'];
$nname = $_POST['nname'];
$email = $_POST['email'];
$email2 = $_POST['email2'];
$betreff = $_POST['betreff'];
$nachricht = $_POST['nachricht'];
$to = '[email protected]';
$checkbox = $_POST['checkbox'];
$human = intval($_POST['human']);
$body =" Name: $name\n Nachname: $nname\n E-Mail: $email\n\n Betreff: $betreff\n Nachricht:\n $nachricht \n ---\n Holger";
$datei = "test.txt";
$typ = "text/plain";
$anhang = fread(fopen($datei, "r"), filesize($datei));
$anhang = chunk_split(base64_encode($anhang));
$boundary = md5(uniqid(time()));
$headers = "MIME-Version: 1.0\n";
$headers = "From: $email\n";
$headers .= "Reply-To: $email\n";
$headers .= "Content-Type: multipart/mixed; boundary=".$boundary."\n";
$headers .= "--".$boundary."\n";
$headers .= "Content-Type: text/plain\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "--".$boundary."\n";
$headers .= "Content-Type: ".$typ."; name=\"".$datei."\"\n";
$headers .= "Content-Transfer-Encoding: base64\n";
$headers .= "Content-Disposition: attachment; filename=\"".$datei."\"\n";
$headers .= $anhang."\n";
//Prüft ob ein Name eingeben wurde.
if (!$_POST['name']) {
$errName = 'Name eingeben.';
}
//Prüft ob ein Nachname eingeben wurde.
if (!$_POST['nname']) {
$errNname = 'Name eingeben.';
}
//Prüft ob eine E-Mail eingeben wurde.
if (!$_POST['email'] || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
$errEmail = 'E-Mail prüfen.';
}
//Prüft ob eine E-Mail eingeben wurde.
if (!$_POST['email2'] || !filter_var($_POST['email2'], FILTER_VALIDATE_EMAIL)) {
$errEmail2 = 'E-Mail prüfen.';
}
if($email == $email2) {
// Email korrekt.
} else {
// Email nicht korrekt.
$errEmail2 = 'E-Mail prüfen.';
}
//Prüft ob eine Betreff eingeben wurde.
if (!$_POST['betreff']) {
$errBetreff = 'Betreff eingeben.';
}
//Prüft ob eine Nachricht eingeben wurde.
if (!$_POST['nachricht']) {
$errNachricht = 'Nachricht eingeben.';
}
//Einfacher Anti-bot scheck
if ($human !== 9) {
$errHuman = 'Falsche Antwort.';
}
//Prüft die Checkbox
if (!($_POST['checkbox'])) {
$errCheckbox = 'Checkbox Aktivieren.';
}
// Wenn kein Fehler Sende E-Mail.
if (!$errName && !$errNname && !$errEmail && !$errEmail2 && !$errBetreff && !$errNachricht && !$errHuman && !$errCheckbox) {
if (mail ($to, $betreff, $body, $headers)) {
$result='<div class="button warning">Nachricht wurde verschickt.</div>'; echo "<meta http-equiv=\"Refresh\" content=\"3;url=index.html\">";
} else {
$result='<div class="button alert">Nachricht wurde nicht verschickt, versuchen Sie es später noch einmal.</div>';
}
}
}
?>
doch leider kommt die email so an.
Code:
Content-Type: text/plain; name="test.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.txt"
YW5oYW5nIMO8w6TDtg==
Name: Max
Nachname: Müller
E-Mail: [email protected]
Betreff: test öäü
Nachricht:
123
---
Zuletzt bearbeitet von einem Moderator: