Ich verwende den PHPMailer um E-Mails automatisch zu versenden. Ohne Anhang geht das auch einwandfrei. Nun verschicke ich automatisch Log-Dateien, diese sind im Xml-Format und verwenden als Encoding UTF-16. Die Log-Dateien kommen auch einwandfrei an. Die empfangene Datei enthält aber leider nun chinesische Schriftzeichen, aber die Log-Datei auf dem Server enthält deutsche texte.
Log-Datei
Zitat:
<?xml version="1.0" encoding="UTF-16"?>
<log>
<debug date="30.11.2010" time="16:27:38">
<message level="1" date="30.11.2010" time="16:27:38">
<description>Test</description>
</message>
</debug>
</log>
|
PHP-Skript
PHP-Code:
<?php
//Klasse einbinden
require('class.phpmailer.php');
//Instanz von PHPMailer bilden
$mail = new PHPMailer();
//Absenderadresse der Email setzen
$mail->From = "mail@domain.de";
//Name des Abenders setzen
$mail->FromName = "TanMar Tutorials";
//Empfängeradresse setzen
$mail->AddAddress("mail@domain.de");
//Betreff der Email setzen
$mail->Subject = "Die erste Mail";
//Text der EMail setzen
$mail->Body = "Hallo! \n\n Dies ist die erste Email mit PHPMailer!";
//Eine Datei vom Server als Attachment anhängen
$mail->AddAttachment(dirname(__FILE__) . '/log.xml','Log.xml');
//EMail senden und überprüfen ob sie versandt wurde
if(!$mail->Send())
{
//$mail->Send() liefert FALSE zurück: Es ist ein Fehler aufgetreten
echo "Die Email konnte nicht gesendet werden";
echo "Fehler: " . $mail->ErrorInfo;
} else {
//$mail->Send() liefert TRUE zurück: Die Email ist unterwegs
echo "Die Email wurde versandt.";
}
?>