hilfdirselbst.ch
Facebook Twitter gamper-media

Forenindex » Programmierung/Entwicklung » PHP und MySQL » File und Adresse per Mail senden

 



fotoblitz
Beiträge: 20

28. Apr 2007, 06:43

Beitrag #1 von 5
Bewertung:

(7409 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

File und Adresse per Mail senden


Ich habe hier ein Scribt hochgeladen , mit welchem ein File und Angaben über den Benutzer direkt per Mail übermittelt werden können.
Ihr müsst einfach noch ein Formular gestallten und die Variablen am richtigen Ort plazieren. Falls Ihr Fragen habt einfach melden.

Vielleicht hilft es ja dem einen oder anderen.

Das ganze in Aktion könnt ihr auf http://www.fotoblitz.ch sehen (Digitalfotolabor für schnelle Fotos)





Code
<?php 
// Variablen für die Mails
$to = "deine@email.ch";
$from = $_POST['mail'];
$max_byte_size = 4097152;
$allowed_types = "(jpg|jpeg|gif|bmp|png|doc|ppt|psd|pdf)";
$stk=$_POST['stk'];
$art=$_POST['nr'];
$wohn=$_POST['ort'];
$adresse=$_POST['adi'];
$user_neu=$_POST['user'];
$bemer=$_POST['bem'];
$subject = "Bestellung $stk Stück $art";
$message = "$stk Stück Artikel Nummer: $art \n\n$user_neu \n$adresse \n$wohn \n$from \n\nBemerkungen: $bemer" ;
$best= "Hier kannst du deine Antwort für dei Besätigung einfügen";


//schauen ob im Feld Stückzahl was steht
$Fehler="N";
if ($stk =="") {
$Fehler ="Y";
}
if ($Fehler=="N") {

//schauen ob im Feld Email was steht
$Fehler="N";
if ($from =="") {
$Fehler ="Y";
}
if ($Fehler=="N") {

//schauen ob im Feld Ort was steht
$Fehler="N";
if ($wohn =="") {
$Fehler ="Y";
}
if ($Fehler=="N") {

//schauen ob im Feld Adresse was steht
$Fehler="N";
if ($adresse =="") {
$Fehler ="Y";
}
if ($Fehler=="N") {

//schauen ob im Feld Name was steht
$Fehler="N";
if ($user_neu =="") {
$Fehler ="Y";
}
if ($Fehler=="N") {



// File Upload Variabeln
$fileatt = $_FILES['fileatt']['tmp_name'];
$fileatt_type = $_FILES['fileatt']['type'];
$fileatt_name = $_FILES['fileatt']['name'];

$headers = "From: $from";
$kopf = "From: $to";

// Wurde wirklich eine Datei hochgeladen?
if(is_uploaded_file($_FILES["fileatt"]["tmp_name"])) {

// Gültige Endung? ($ = Am Ende des Dateinamens) (/i = Groß- Kleinschreibung nicht berücksichtigen)
if(preg_match("/\." . $allowed_types . "$/i", $_FILES["fileatt"]["name"])) {

// Datei auch nicht zu groß
if($_FILES["fileatt"]["size"] <= $max_byte_size) {

if (is_uploaded_file($fileatt)) {
// Schaut ob es ein zugelassenes File ist
$file = fopen($fileatt,'rb');
$data = fread($file,filesize($fileatt));
fclose($file);

// Generiert einen String
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

// Anhang
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";

// Damit es als Mailanhang klappt
$message = "This is a multi-part message in MIME format.\n\n" .
"--{$mime_boundary}\n" .
"Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
"Content-Transfer-Encoding: 7bit\n\n" .
$message . "\n\n";

// Base64 Entcodierung
$data = chunk_split(base64_encode($data));

// Zum Mail hinzufügen
$message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
//"Content-Disposition: attachment;\n" .
//" filename=\"{$fileatt_name}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n" .
"--{$mime_boundary}--\n";
}

// Mails senden (eine Bestätigung an den Absender)
mail($from, $subject, $best, $kopf);
$ok = @mail($to, $subject, $message, $headers);
if ($ok) {
header("location: ok.php");
} else {
header("location: fehler.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "Datei zu gross $from", $kopf);
header("location: zugross.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "Falsche Datei $from", $kopf);
header("location: keinbild.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "keine Datei $from", $kopf);
header("location: bild.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "kein Name $from", $kopf);
header("location: namen.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "keine Adresse $from", $kopf);
header("location: adresse.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "keine Wohnort $from", $kopf);
header("location: wohnort.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "keine Email $from", $kopf);
header("location: email.php");
}

}
else {
mail($to, "Fehler bei der Eingabe", "keine Menge $from", $kopf);
header("location: menge.php");
}
?>







www.fotoblitz.ch Fotolabor für Digialfotos
Top

Intermedia S
Beiträge: 1158

28. Apr 2007, 11:23

Beitrag #2 von 5
Beitrag ID: #288996

Bewertung:

(7394 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

File und Adresse per Mail senden


Hi,

das ist zwar nett gemeint aber mir viel zu aufwendig für jedes Feedback eine eigene Datei zu erstellen und dann noch zig Mails bei Fehleingaben zu erhalten. Außerdem läd das Ding ja ein dich zuzuspammen.

Du solltest dir mal dringenst das hier durchlesen: http://www.hilfdirselbst.ch/...;;page=unread#unread

Gruß Sven


http://www.b-foto.de jetzt auch mit kleiner Bildbearbeitung und Versand aufs Handy oder per Mail oder per Postkarte und Puzzlespiele zur Entspannung zwischendurch

als Antwort auf: [#288984] Top

ganesh  M 
Beiträge: 1914

28. Apr 2007, 12:56

Beitrag #3 von 5
Beitrag ID: #289008

Bewertung: |||

(7388 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

File und Adresse per Mail senden


Ja, das ist eine Spamschleuder allererster Güte. Man kann damit sogar Leute mit attachments zumüllen, ein Novum :)

als Antwort auf: [#288984] Top

fotoblitz
Beiträge: 20

28. Apr 2007, 13:25

Beitrag #4 von 5
Beitrag ID: #289014

Bewertung: |||||

(7383 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

File und Adresse per Mail senden


Antwort auf [ ganesh ] Ja, das ist eine Spamschleuder allererster Güte. Man kann damit sogar Leute mit attachments zumüllen, ein Novum :)


Wenn das so ist, kannst du sicher das Scribt so umschreiben das es keine Spamschleuder mer ist oder?

Bin auf dein Können gespannt!!!!






www.fotoblitz.ch Fotolabor für Digialfotos

als Antwort auf: [#289008] Top

Intermedia S
Beiträge: 1158

28. Apr 2007, 15:04

Beitrag #5 von 5
Beitrag ID: #289022

Bewertung:

(7373 mal gelesen)
URL zum Beitrag

Beitrag als Lesezeichen

File und Adresse per Mail senden


Antwort auf [ fotoblitz ] Wenn das so ist, kannst du sicher das Scribt so umschreiben das es keine Spamschleuder mer ist oder?

Bin auf dein Können gespannt!!!!


..... und ja, ich denke mal das er das schafft.......

Für den Beweis dafür kann ich das Jobforum wärmstens empfehlen.

Gruß Sven


http://www.b-foto.de jetzt auch mit kleiner Bildbearbeitung und Versand aufs Handy oder per Mail oder per Postkarte und Puzzlespiele zur Entspannung zwischendurch

als Antwort auf: [#289014] Top


Forenindex » Programmierung/Entwicklung » PHP und MySQL » File und Adresse per Mail senden


^