hallo...
habe folgendes script, welches auch wunderbar geht.
allerdings lässt sich das formular nicht ohne datei versenden, was an dem if!empty liegt.
ich würde gern eine checkbox einfügen und das ganze mit
if checkbox yes dann mit attachment else ohne... so in art laufen lassen. oder kann man da einfach einstück weglöschen, damit das ganze auch ohne dateianhang läuft?
und eine max. dateigröße von 3MB hinzufügen.
kann da wer helfen?
mein lösungsansatz wäre irgendwie so in der art
für lösungen oder lösungsvorschläge wäre ich sehr dankbar
gruß myabe
habe folgendes script, welches auch wunderbar geht.
allerdings lässt sich das formular nicht ohne datei versenden, was an dem if!empty liegt.
ich würde gern eine checkbox einfügen und das ganze mit
if checkbox yes dann mit attachment else ohne... so in art laufen lassen. oder kann man da einfach einstück weglöschen, damit das ganze auch ohne dateianhang läuft?
und eine max. dateigröße von 3MB hinzufügen.
kann da wer helfen?
PHP:
<?php
if(isset($_POST) && !empty($_POST) ) {
if(!empty($_FILES['datei']['name']) ) {
$file_name = $_FILES['datei']['name'];
$temp_name = $_FILES['datei']['tmp_name'];
$file_type = $_FILES['datei']['type'];
$base = basename($file_name);
$extension = substr($base, strlen($base)-4, strlen($base));
$allowed_extensions = array(".pdf",".jpg",".zip",".png");
if(in_array($extension,$allowed_extensions) ) {
$from = $_POST['email'];
$datum = "".date("D, j.n.Y").$return;
$anrede = $_POST['anrede'].$return;
$betreff = $_POST['betreff'].$return;
$darstellung = $_POST['darstellung'].$return;
$nachname = $_POST['nachname'].$return;
$vorname = $_POST['vorname'];
$tele = $_POST['tele'].$return;
$nachricht = $_POST['nachricht'];
$to = "mail@mail.de";
$subject = "Preisanfrage";
$message = "
Anrede: $anrede
Name: $vorname $nachname
email: $from
Telefon: $tele
Betreff: $betreff
Darstellung: $darstellung
Datum: $datum
Nachricht: $nachricht ";
$file = $temp_name;
$content = chunk_split(base64_encode(file_get_contents($file)));
$uid = md5(uniqid(time()));
$header = "From: ".$from."\r\n";
$header .= "Reply-To: ".$replyto."\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
$header .= "This is a multi-part message in MIME format.\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
$header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
$header .= $message."\r\n\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-Type: ".$file_type."; name=\"".$file_name."\"\r\n";
$header .= "Content-Transfer-Encoding: base64\r\n";
$header .= "Content-Disposition: attachment; filename=\"".$file_name."\"\r\n\r\n";
$header .= $content."\r\n\r\n";
if (mail($to, $subject, "", $header)) {
echo "Anfrage war erfolgreich!";
} else {
echo "Anfrage gescheitert";
}
} else {
echo " Die Datei ist zu groß oder das Format wird nicht unterstützt";
}
}
}
?>
HTML:
<html>
</head>
<body>
<form method="post" action="Formular.php" enctype="multipart/form-data">
<table style="width:500px">
<tr><td colspan="2"></td></tr>
<tr>
<td style="width:150px"><strong>Anrede:</strong></td>
<td><select name="anrede">
<option value=" - - -">- - - -</option>
<option value="Herr">Herr</option>
<option value="Frau">Frau</option></select></td>
</tr>
<tr>
<td style="width:150px"><strong>Name:</strong></td>
<td><input name="nachname" type="text" value="" size="40" maxlength="100" /></td>
</tr>
<tr>
<td style="width:150px"><strong>Vorname:</strong></td>
<td><input name="vorname" type="text" value="" size="40" maxlength="100" /></td>
</tr>
<tr>
<td style="width:150px"><strong>E-Mail:</strong><br /></td>
<td><input name="email" type="text" id="email" value="" size="40" maxlength="100" /></td>
</tr>
<tr>
<td style="width:150px"><strong>Telefon:</strong></td>
<td><input name="tele" type="text" value="" size="40" maxlength="50" /></td>
</tr>
<tr>
<td style="width:150px"><strong>Betreff:</strong></td>
<td><select name="betreff">
<option value="----">- - - -</option>
<option value="1 Grundriss">1 Grundriss</option>
<option value="2 Grundrisse">2 Grundrisse</option>
<option value="3 Grundrisse">3 Grundrisse</option>
<option value="mehr Grundrisse">mehr Grundrisse</option>
<option value="1 Perspektive">1 Perspektive</option>
<option value="2 Perspektiven">2 Perspektiven</option>
<option value="3 Perspektiven">3 Perspektiven</option>
<option value="mehr Perspektiven">mehr Perspektiven</option>
<option value="25 sec Animation">25 sec Animation</option>
<option value="30 sec Animation">30 sec Animation</option>
<option value="35 sec Animation">35 sec Animation</option>
<option value="40 sec Animation">40 sec Animation</option>
<option value="45 sec Animation">45 sec Animation</option>
<option value="50 sec Animation">50 sec Animation</option>
<option value="55 sec Animation">55 sec Animation</option>
<option value="60 sec Animation">60 sec Animation</option>
<option value="längere Animation">längere Animation</option>
<option value="Eigener Betreff">Eigener Betreff</option>
</select></td>
</tr>
<tr>
<td style="width:150px"><strong>Darstellung:</strong></td>
<td><select name="darstellung">
<option value="- - - ">- - - -</option>
<option value="2D Grundriss/skizzenhaft">2D Grundriss/skizzenhaft</option>
<option value="2D Grundriss/CAD">2D Grundriss/CAD</option>
<option value="3D Grundriss">3D Grundriss</option>
<option value="Perspektive fotorealistisch (normal)">Perspektive fotorealistisch (normal)</option>
<option value="Perspektive fotorealistisch (detailiert)">Perspektive fotorealistisch (detailiert)</option>
<option value="Perspektive skizzenhaft">Perspektive skizzenhaft</option>
<option value="Eigene wünsche">Eigene wünsche</option>
</select></td>
</tr>
<tr>
<td style="width:150px"><strong>Nachricht:</strong></td>
<td><textarea name="nachricht" cols="40" rows="10" style="white-space: nowrap;"></textarea></td>
</tr>
<tr>
<tr>
<td style="width:150px"><strong></strong></td>
<td><input type="checkbox" name="checkbox" value="1">Dateianhang<br></td>
</tr>
<tr>
<td style="width:150px"><strong>Dateianhang:</strong></td>
<td><input type="file" name="datei" value="" size="30" maxlength="20" /></td>
</tr>
<tr>
<td style="width:150px"><strong></strong></td>
<td><input type="submit" value="Absenden"/></td>
</tr>
</tr>
</table>
</form>
</body>
</html>
mein lösungsansatz wäre irgendwie so in der art
PHP:
if(isset($_POST['checkbox']))
if(isset($_POST) && !empty($_POST) ) {
if(!empty($_FILES['datei']['name']) ) {
$file_name = $_FILES['datei']['name'];
//.................scriptkürzung
echo " Die Datei ist zu groß oder das Format wird nicht unterstützt";
}
}
} else {
if(isset($_POST) && !empty($_POST) ) {
if(in_array($extension,$allowed_extensions) ) {
$from = $_POST['email'];
$datum = "".date("D, j.n.Y").$return;
$anrede = $_POST['anrede'].$return;
$betreff = $_POST['betreff'].$return;
$darstellung = $_POST['darstellung'].$return;
gruß myabe
Zuletzt bearbeitet: