php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.02.2005, 15:16  
Gast
 
Beiträge: n/a
Standard E-Mail mit Anhang und Nachrichtentext

Hallo,

ich möchte eine E-Mail mit Anhang und Text versenden, wenn die .php-Seite aufgerufen wird. Die E-Mail kommt an, auch die Datei im Anhang funktioniert einwandfrei, aber bis auf den Anhang ist die E-Mail leer, der Text wird nicht mitgeschickt... Kann mir vielleicht einer helfen???

Danke!!!

Code:
<?php    
   $anhang=fopen("tabelle.xls", r); 
   $groesse=filesize("tabelle.xls"); 
   $anhangdatei=fread($anhang,$groesse); 
   $anhang_email=chunk_split(base64_encode($anhangdatei)); 
   fclose($anhang); 
    
   $Empfaenger="test@test.test"; 
   $Betreff = "Tabelle"; 
   $email_text = "Im Anhang findest du die Tabelle!!!";
       
   $Dateiname = "tabelle.xls"; 
   $DateinameMail = "tabelle.xls"; 
    
   $Header = "From: Absender <sender@test.test>"; 
    
   $bound = strtoupper(md5(uniqid(time()))); 
   $Header .= "\n"; 
   $Header .= "MIME-Version: 1.0"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: multipart/mixed; boundary=$bound"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: 8bit"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type; name=$DateinameMail"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: base64"; 
   $Header .= "\n"; 
   $Header .= "Content-Disposition: attachment; filename=$DateinameMail"; 
   $Header .= "\n\n"; 
   $Header .= chunk_split(base64_encode(fread(fopen($Dateiname, "r"), filesize($Dateiname)))); 
   $Header .= "\n"; 
   $Header .= "--$bound--"; 
    
   mail($Empfaenger, $Betreff, $email_text, $Header); 
?>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.02.2005, 17:03  
Gast
 
Beiträge: n/a
Standard

Ich glaube, bei einer Multipart-Mail musste dein $email_text mit an $Header anhängen.
Mal ausprobieren ...
 
Alt 20.02.2005, 17:59  
Gast
 
Beiträge: n/a
Standard

Und wie genau soll ich den darein packen??? (Bin noch ein noob...)
 
Alt 20.02.2005, 18:04  
Gast
 
Beiträge: n/a
Standard

Hmm eventuell so:

$Header .= "\n$email_text";

So an die letzte Zeile.
 
Alt 20.02.2005, 18:28  
Gast
 
Beiträge: n/a
Standard

Sieht jetzt so aus:

Code:
<?php    
   $anhang=fopen("tabelle.xls", r); 
   $groesse=filesize("tabelle.xls"); 
   $anhangdatei=fread($anhang,$groesse); 
   $anhang_email=chunk_split(base64_encode($anhangdatei)); 
   fclose($anhang); 
    
   $Empfaenger="test@test.test"; 
   $Betreff = "Tabelle"; 
   $email_text = "Im Anhang findest du die Tabelle!!!";
       
   $Dateiname = "tabelle.xls"; 
   $DateinameMail = "tabelle.xls"; 
    
   $Header = "From: Absender <sender@test.test>"; 
    
   $bound = strtoupper(md5(uniqid(time()))); 
   $Header .= "\n"; 
   $Header .= "MIME-Version: 1.0"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: multipart/mixed; boundary=$bound"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: 8bit"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type; name=$DateinameMail"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: base64"; 
   $Header .= "\n"; 
   $Header .= "Content-Disposition: attachment; filename=$DateinameMail"; 
   $Header .= "\n\n"; 
   $Header .= chunk_split(base64_encode(fread(fopen($Dateiname, "r"), filesize($Dateiname)))); 
   $Header .= "\n"; 
   $Header .= "--$bound--"; 
   $Header .= "\n$email_text";

   mail($Empfaenger, $Betreff, $email_text, $Header); 
?>
Funzt aber immer noch nicht...
 
Alt 20.02.2005, 18:32  
Gast
 
Beiträge: n/a
Standard

Nun so???

Code:
<?php    
    
    ...

   $Header = "From: Absender <sender@test.test>"; 
    
   $bound = strtoupper(md5(uniqid(time()))); 
   $Header .= "\n"; 
   $Header .= "MIME-Version: 1.0"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: multipart/mixed; boundary=$bound"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: 8bit"; 
   $Header .= "\n\n"; 
   $Header .= "--$bound"; 
   $Header .= "\n"; 
   $Header .= "Content-Type: $file_type; name=$DateinameMail"; 
   $Header .= "\n"; 
   $Header .= "Content-Transfer-Encoding: base64"; 
   $Header .= "\n"; 
   $Header .= "Content-Disposition: attachment; filename=$DateinameMail"; 
   $Header .= "\n\n"; 
   $Header .= chunk_split(base64_encode(fread(fopen($Dateiname, "r"), filesize($Dateiname)))); 
   $Header .= "\n"; 
   $Header .= "--$bound--"; 
   $Header .= "\n$email_text";
   $Header .= "--$bound--"; 

   mail($Empfaenger, $Betreff, $email_text, $Header); 
?>
 
Alt 20.02.2005, 18:33  
Gast
 
Beiträge: n/a
Standard

Wo wird eigentlich $file_type definiert ?
Ist der Wert überhaupt vorhanden ?
Finde ich nicht im Script.
 
Alt 20.02.2005, 18:33  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

nein, sorry, ich hab was sinnloses gepostet.

egal.
versuch's doch mal mit http://phpmailer.sourceforge.net - das ding arbeitet zuverlässig und wirksam und du brauchst keine angst davor zu haben, was falsch zu machen.
axo ist offline  
Alt 20.02.2005, 18:36  
Gast
 
Beiträge: n/a
Standard

$file_type wird nicht definiert, wie gesagt, das mit dem Anhang funzt, nur der Text fehlt in der Mail...
 
Alt 20.02.2005, 18:37  
Gast
 
Beiträge: n/a
Standard

Geht auch so:

http://www.cix88.de/php/php_web/level1_email_anhang.php
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mail Anhang decodieren PHP-Fortgeschrittene 3 30.01.2006 22:53
mail() und dateien anhang? PHP Tipps 2007 2 02.11.2005 21:27
Mail mit mail() kommt nicht an center PHP Tipps 2005-2 5 18.08.2005 13:02
Buchstabensuppe bei mail mit Anhang PHP Tipps 2005-2 3 18.07.2005 14:31
Mail Formular mit Bilder als Anhang PHP Tipps 2005-2 1 29.06.2005 18:21
problem bei mail() mit anhang kid01 PHP Tipps 2005 7 16.05.2005 21:19
mail mit anhang PHP Tipps 2005 1 06.05.2005 20:52
[Erledigt] mail versand mit anhang (-- fopen(), fread(), filesize() --) PHP Tipps 2005 5 29.01.2005 18:36
mail () Datei Anhang socke PHP Tipps 2005 2 08.01.2005 13:08
Mail mit Anhang / Kein Inhalt!? PHP Tipps 2004 20 15.10.2004 12:37
mail() mit *.txt Anhang funktioniert nicht ganz... 18inch PHP Tipps 2004 7 12.10.2004 11:47
mail() - mail header PHP-Fortgeschrittene 2 28.09.2004 15:35
Mail Problem mit Anhang Spyker PHP-Fortgeschrittene 2 21.09.2004 21:41
[Erledigt] Hilfe Bei Mail Header und Emailversand mit Anhang PHP-Fortgeschrittene 1 17.09.2004 13:14
mail mit Anhang PHP Tipps 2004 6 13.09.2004 12:08

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php xls attachment, php xls anhang mail encoding, php xls-datei als anhang, php mail xls anhang, base64_encode fread, bei mail mit anhang fehlt der text php, bound mail, php <<nachrichtentext, email php text als anhang, level1_email_anhang.php

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:07 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.