php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack (2) Themen-Optionen Thema bewerten
  2 links from elsewhere to this Post. Click to view. #1 (permalink)  
Alt 27-08-2011, 13:54
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard E-mail mit Anhang

Hallo,
ich hätte mal eine Frage. Naja bin neu in php und bin noch dabei die Grundlagen usw. zu lernen aber trotzdem ist da eine Sache die mir auf dem Herzen liegt. Ähh ja das sollte eig. ein kontaktformular werden das mir eine e-mail mit einem Anhang sendet. Der anhang soll ein Bild sein das der user mit einem Datei_upload hochgeladen hat. Aber leider passt da was nicht ich bekomme keine mail .,. Naja ich poste mal den code und hoffe ihr könnt mir helfen.

Code:
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />

<?php
function mail_att($to,$subject,$message,$anhang)
   {
     $to= "storestore@web.de";
$anhang = array();
$anhang["name"] = $_FILES['datei_feld']['name'];
$anhang["size"] = $_FILES['datei_feld']['size'];
$anhang["type"] = $_FILES['datei_feld']['type'];
$anhang["data"] = implode("",file($_FILES['datei_feld']['tmp_name']));

mail_att("storestore@web.de","Email mit Anhang","Im Anhang ist eine Datei",$anhang);
}
?>
Ok, danke im voraus
gruß Programmieren
Mit Zitat antworten
  #2 (permalink)  
Alt 27-08-2011, 14:01
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

der Code ergibt leider überhaupt keinen Sinn, nicht zuletzt wegen des rekursiven Aufrufs. Mit der mail()-Funktion kann man so etwas bewerkstelligen, aber dann musst du dich schon gut mit den RFCs auskennen. Daher gibt es bereits viele fertige PHP-Mailerklassen, die man benutzen kann, um diese Aufgabe zu vereinfachen. Einfach mal googlen.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #3 (permalink)  
Alt 27-08-2011, 14:06
Benutzerbild von ApoY2k ApoY2k
 Registrierter Benutzer
Links : Onlinestatus : ApoY2k ist offline
Registriert seit: Nov 2006
Beiträge: 359
ApoY2k befindet sich auf einem aufstrebenden Ast
ApoY2k eine Nachricht über ICQ schicken ApoY2k eine Nachricht über Skype™ schicken
Standard

Hier gleich ein Beispiel: – Swift Mailer

Meiner Meinung nach mit Abstand die beste Mailer-Klasse, benutze sie schon sehr lange und bisher hatte ich noch kein einziges Mal ein Problem damit. Auch Anhänge funktionieren einwandfrei.
__________________
This is what happens when an unstoppable force meets an immovable object.
Mit Zitat antworten
  #4 (permalink)  
Alt 27-08-2011, 14:24
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Ok, danke für die schnellen Antworten. ICh schau es mir mal an und dann melde ich mich wieder. Ähh also so mit eine mail() Funktion ist nicht möglich oder zu unsicher. Ist das richtig Was macht so eine mailer klasser eig. ist das ein ersatz für die mail-funktion oder ist das ein eigener Server oder was habe ich mir darunter vorzustellen?
Ist sowas kostenlos?
mfg Programmieren

Geändert von Programmieren (27-08-2011 um 14:26 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 27-08-2011, 14:36
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Richtig, mail() ist eher für erfahrene Coder geeignet. Diese Mailer benutzen es meist ebenfalls, aber es gibt auch viele, die parallel dazu oder ausschließlich socketbasierten Versand unterstützen. Bei Swiftmailer kann man es sich meines Wissens nach aussuchen. Kostenlos sind die meisten auch.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #6 (permalink)  
Alt 27-08-2011, 16:41
Scar
 Registrierter Benutzer
Links : Onlinestatus : Scar ist offline
Registriert seit: Dec 2002
Beiträge: 44
Scar ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mit dem Mail + Mime Package von Pear kannst du auch relativ einfach Attachments versenden:

Pear Mail
Mit Zitat antworten
  #7 (permalink)  
Alt 27-08-2011, 18:25
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

OK, danke für die Info. Dieser Mailer sind des wirklich richtige Programme wie z.b. ein editor oder ist es einfach ein code den man eingibt? Nach dem link von ApoY2k ist es nur ein code zum Angeben (Ohh hätte ich fast vergessen, ein fettes Danke an ApoY2k und natürlich auch an AmicaNoctis und an Scar). Ist es sowas wie PHPMailer | Download PHPMailer software for free at SourceForge.net ?
Swift-mail sieht sehr gut aus ich werde es mir mal genauer angucken
Naja also ein fettes von mir an alle für die netten, schnellen und hilfreichen Infos.
mfg Programmieren

Geändert von Programmieren (27-08-2011 um 18:32 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 27-08-2011, 20:27
Benutzerbild von ApoY2k ApoY2k
 Registrierter Benutzer
Links : Onlinestatus : ApoY2k ist offline
Registriert seit: Nov 2006
Beiträge: 359
ApoY2k befindet sich auf einem aufstrebenden Ast
ApoY2k eine Nachricht über ICQ schicken ApoY2k eine Nachricht über Skype™ schicken
Standard

Das sind einfach php-Dateien, die du in deine Datei einbindest. Danach steht dir in deinem Code die Funktionalität zur Verfügung.
__________________
This is what happens when an unstoppable force meets an immovable object.
Mit Zitat antworten
  #9 (permalink)  
Alt 28-08-2011, 12:24
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Achso, ok jetzt hab ichs kappiert. Ich werde es mal mit der von dir geposteten Seite versuche. Danke. Jetzt nur mal aus Interesse was war den am von mir geposteten code eig. falsch? Würde mich echt freuen wenn mir jemand ein tipp geben könnte. Ich habe nämlich in "google" folgendes eingegeben: "PHP email mit anhang" und da ist eine Seite erschienen die es o beschrieben hat. Hier mal den Link PHP-Einfach.de - Email mit Anhang
Da steht wie man das mit einem datei_upload machen muss.
Ok, ich werde es jetzt mit der mailer-klasse versuchen. Danke
Mit Zitat antworten
  #10 (permalink)  
Alt 28-08-2011, 13:29
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Achso, ok jetzt hab ichs kappiert, danke. Leider gibt es für swiftmail nur Anleitungen in Englisch. Da mein 7klass-Englisch noch nicht so ausgeprägt ist habe ich mich entschieden es mit zend_mail oder mit AMC_mail zu versuchen. Hat jemand mit einen von denen schon mal Erfahrung gemacht?. Jetzt nur mal aus Interesse was war den am von mir geposteten code eig. falsch? Würde mich echt freuen wenn mir jemand ein tipp geben könnte. Ich habe nämlich in "google" folgendes eingegeben: "PHP email mit anhang" und da ist eine Seite erschienen die es so beschrieben hat. Hier mal den Link PHP-Einfach.de - Email mit Anhang
Da steht wie man das mit einem datei_upload machen muss.
Ok, ich werde es jetzt mit der mailer-klasse versuchen. Danke
Danke im voraus
mfg Programmieren

Geändert von Programmieren (28-08-2011 um 13:31 Uhr)
Mit Zitat antworten
  #11 (permalink)  
Alt 28-08-2011, 13:39
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

PHP-Code:
<?php
/*01*/function mail_att($to,$subject,$message,$anhang) {
/*02*/    $to"storestore@web.de";
/*03*/    $anhang = array();
/*04*/    $anhang["name"] = $_FILES['datei_feld']['name'];
/*05*/    $anhang["size"] = $_FILES['datei_feld']['size'];
/*06*/    $anhang["type"] = $_FILES['datei_feld']['type'];
/*07*/    $anhang["data"] = implode("",file($_FILES['datei_feld']['tmp_name']));
/*08*/
/*09*/    
mail_att("storestore@web.de","Email mit Anhang","Im Anhang ist eine Datei",$anhang);
/*10*/}
?>
01: $to, $subject, $message sind vermutlich Strings, aber was stellt $anhang dar? Da es in der Funktion explizit definiert wird, ist eigentlich total egal, was du dort reinstopfst, also ist der Parameter Unsinn.
02: Wieso wird der Parameter ignoriert und fest vorgegeben? Wieder Unsinn.
03: Siehe 01
04–07: Eine Funktion, die Superglobals (hier $_FILES) ausliest, ist schlechter Stil. Die Daten werden jetzt in das Array $anhang kopiert, aber was soll das bringen?
09: Rekursiver Aufruf mit festen Parametern. Jetzt wird die Funktion also nochmal aufgerufen, als letzter Parameter wird das zusammengeklöppelte Array übergeben, aber dieser Parameter war ja ohnehin für die Tonne, siehe 01. Die übrigen Parameter wurden auch nicht sinnvoll verwendet. Die Rekursion ohne Abbruchbedingung führt zu einem enlosen Wiederaufruf der Funktion.

Kurz, du hast eine infinite do-nothing-machine gebaut.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #12 (permalink)  
Alt 28-08-2011, 17:01
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Ok, verstehe. Gut:
1. $anhang ist draußen
2. Parameter werden nicht mehr ignoriert
3 ?!?
4. Leider weiß ich nicht was man als ersatz nehmen könnte. Aber ich glaube das ist die einfachste Form, oder.
4.2 Naja, das was ich jetzt mit $_FILES definiert habe soll in die variable $anhang
9. Habs mit mail_att(); beendet. Aber wie soll er es mir sonst schicken? Mit einer mail function? Hmm, das wäre doch eine idee oder.

Naja hier mal das ausgebesserte:
Code:
<?php
/*Anhang weg!*/       function mail_att($to,$subject,$message) {
/*keine vorgaben mehr!*/    
/*!?!*/    $anhang = array();
/*Leider weiß ich nicht 
wie man
das besser
 machen 
kann*/    $anhang["name"] = $_FILES['datei_feld']['name'];
/*05*/    $anhang["size"] = $_FILES['datei_feld']['size'];
/*06*/    $anhang["type"] = $_FILES['datei_feld']['type'];
/*07*/    $anhang["data"] = implode("",file($_FILES['datei_feld']['tmp_name']));
/* Bin ich mir leider noch nicht sicher!*/

   mail_att();
?>

Geändert von Programmieren (28-08-2011 um 17:16 Uhr)
Mit Zitat antworten
  #13 (permalink)  
Alt 28-08-2011, 17:17
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Warum nimmst du nicht einfach den kompletten Code von der Tutorial-Seite? Das bringt dir doch im Endeffekt mehr, als diese Funktion selbst falsch nachzubauen, oder?
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #14 (permalink)  
Alt 28-08-2011, 17:38
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Ich habe sie eig. reingezogen, also das mit dem Dateiupload. Aber mein bplaced hat gemekert das die mail_att funktion fehlt
Mit Zitat antworten
  #15 (permalink)  
Alt 28-08-2011, 22:27
Programmieren
 Registrierter Benutzer
Links : Onlinestatus : Programmieren ist offline
Registriert seit: Aug 2011
Beiträge: 17
Programmieren befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Programmieren Beitrag anzeigen
Ich habe sie eig. reingezogen, also das mit dem Dateiupload. Aber mein bplaced hat gemekert das die mail_att funktion fehlt
Kann ich das eig. auch mit einer normalen mail funktion machen. Ich habe ja jetzt den von mir bearbeiteten code gepostet. Darin fehlt nur noch die mail();
funktion. Wie wende ich sie da am besten an.

PS: Wow ein Moderator antwortet mir auch mal. Ich bin ja auch in einem c-sharp-forum aber da schert sich kein Moderator auf meine fragen anständig zu antworten. Echt danke. Ich werde euch auf jeden fall weiter empfehlen!!!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
kontaktformular, php, php 5


LinkBacks (?)
LinkBack to this Thread: https://www.php-resource.de/forum/php-developer-forum/102096-e-mail-mit-anhang.html
Erstellt von For Type Datum
PHP - Bild an mich über Internetseite senden - Entwickler-Ecke This thread Refback 07-03-2013 15:10
C-Sharp-Forum.de - PHP - Bild an mich über Internetseite senden This thread Refback 08-09-2011 09:35

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mail anhang in php aschauer2000 PHP Developer Forum 3 29-08-2011 19:50
anhang per mail Live2 PHP Developer Forum 2 29-08-2011 18:28
Mail mit Anhang mgoertz PHP Developer Forum 1 28-08-2011 17:26
Mail + Anhang - Mime richtig, Mail falsch? Gae-Bulga PHP Developer Forum 1 28-08-2011 17:24
mail() mit xls im anhang xJonx PHP Developer Forum 2 25-11-2010 20:06

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:31 Uhr.