2016-07-16 11 views
1

Ich habe ein Formular und fügen Sie einige chinesische Wörter in die Datenbank ein und es ist in Ordnung. Tabellenzeichensatz ist UTF8. Problem tritt auf, wenn ich diese Daten auswähle und sie per E-Mail als HTML-Anhang sende. Dann wird Chinesisch nicht richtig angezeigt. Wie lösche ich Charset, bevor ich Daten per Mail sende? Sollte ich einige Header verwenden und wird es funktionieren?So geben Sie Chinesisch in HTML-Datei

Mein Code sieht wie folgt aus:

//$attachedBodyContent is data from database that contains some chinese words 
 
Mail::send(
 
      "emails.applicationTemplate", 
 
      $data, 
 
      function($message) use ($data, $template, $subject, $attachedBodyContent) { 
 
       $message->to($data['email'], $data['name']) 
 
        ->from($template['from'],$template['from_name']) 
 
        ->subject($subject) 
 
        ->attachData($attachedBodyContent,'YourApplicationData.html'); 
 
       
 
      } 
 
     );

Antwort

2

Wenn Sie erzeugen Html-Datei anhängen Sie in Ihrem <head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

In diesem Fall sind, sollten Sie diese verwenden können Code für die Zusammenführung Ihrer Inhalte mit

<?php 
    $header = '<!DOCTYPE html> 
    <html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
    </head> 
    <body>'; 
    $footer = '</body> 
    </html>'; 
    $allContent = $header.$attachedBodyContent.$footer; 
?> 
+0

Wie es in html setzen, die ich in meiner HTML-Datei auch Tag nicht habe, wähle ich aus Datenbenutzerdatenbank, und ich habe E-Mail-Vorlage und ich analysiere in Vorlage Benutzerdaten. $ attachedBodyContent = strtr ($ templateApplicationData ['body'], $ attachedData); Dieser $ attachedBodyContent ist Inhalt meiner HTML-Datei. Wie fügt man Tag mit Meta hinzu? –

+0

Ich habe meine Antwort aktualisiert. Du kannst es versuchen! –

+1

Vielen Dank, ich habe gerade einen anderen Weg mit: $ attachedBodyContent = ' '; $ attachedBodyContent. = Strtr ($ templateApplicationData ['body'], $ attachedData); $ attachedBodyContent. = ''; –