E-mail met aparte tekens

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jan Graneker

Jan Graneker

01/03/2016 13:34:44
Quote Anchor link
Beste PHP-ers,

Ik heb een probleempje met een mailing vanuit een product.

We hebben een productnaam bijvoorbeeld: Préjaksjjkas. De website laat de: égoed zien, alleen wanneer ik deze regel in een e-mail wil versturen, dan worden het aparte tekens. Ik maak gebruik van PHPMailer om de e-mail te versturen.

Kan er een UTF-zonder BOM toegevoegt worden aan de output, of hoe ik dit probleem te verhelpen?
 
PHP hulp

PHP hulp

12/12/2024 17:42:50
 
- SanThe -

- SanThe -

01/03/2016 14:40:35
Quote Anchor link
Ik ken phpmailer niet, maar zorg er voor dat de html echt valid html is met de charset op utf-8.
 
Ivo P

Ivo P

01/03/2016 14:43:48
Quote Anchor link
http://phpmailer.worxware.com/?pg=properties

middels $mijnmailer->CharSet = 'UTF-8';

kun je phpmailer de juiste characterset vertellen.

Die geeft dat vervolgens mee in de headers van de mail, zodat de ontvangende mailclient ook weet wat de bedoeling is.
 
Jan Graneker

Jan Graneker

01/03/2016 14:48:20
Quote Anchor link
Jaa:D daar was ik naar opzoek. Bedankt!

Ivo P op 01/03/2016 14:43:48:
http://phpmailer.worxware.com/?pg=properties

middels $mijnmailer->CharSet = 'UTF-8';

kun je phpmailer de juiste characterset vertellen.

Die geeft dat vervolgens mee in de headers van de mail, zodat de ontvangende mailclient ook weet wat de bedoeling is.
 
Frank Nietbelangrijk

Frank Nietbelangrijk

01/03/2016 14:52:16
Quote Anchor link
Probeer eens een extra header:

$mailer->addCustomHeader('Content-Type: text/html; charset="UTF-8"');

Gebruik je HTML dan ook in de html header:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
   <HEAD>
      <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
      <TITLE>My first HTML document</TITLE>
   </HEAD>
   <BODY>
      <P>Hello world!
   </BODY>
</HTML>
 
Thomas van den Heuvel

Thomas van den Heuvel

01/03/2016 14:52:46
Quote Anchor link
En nu kom je er wellicht achter dat de data in je database niet correct is opgeslagen als UTF-8.

Of dat je bij het maken van een connectie met je database geen set_charset() aanroep gebruikte.

Of dat je HTML documenten mogelijk niet de juiste character encoding had.

Of iets anders.

Fun fun.

Misschien helpt het ook om er even bij te vermelden wat voor pakket je gebruikt (en wat voor database)? Is dit open source, zelf geschreven, iets anders? Mogelijk loont het ook de moeite om eens een sanity check op je UTF-8 geëncodeerde (althans, daar ging je van uit) data te doen. Waar rook is is vuur.
Gewijzigd op 01/03/2016 14:53:46 door Thomas van den Heuvel
 
Jan Graneker

Jan Graneker

01/03/2016 15:14:31
Quote Anchor link
Via de editor zijn deze tekens toegevoegd en worden op de website goed weergegeven.
In de database staan de HTML codes voor de tekens. Het ging alleen mis bij het versturen, misschien omdat er geen Charset ingesteld was?

Met de header UTF-8 wordt alles weer goed weergegeven.


Thomas van den Heuvel op 01/03/2016 14:52:46:
En nu kom je er wellicht achter dat de data in je database niet correct is opgeslagen als UTF-8.

Of dat je bij het maken van een connectie met je database geen set_charset() aanroep gebruikte.

Of dat je HTML documenten mogelijk niet de juiste character encoding had.

Of iets anders.

Fun fun.

Misschien helpt het ook om er even bij te vermelden wat voor pakket je gebruikt (en wat voor database)? Is dit open source, zelf geschreven, iets anders? Mogelijk loont het ook de moeite om eens een sanity check op je UTF-8 geëncodeerde (althans, daar ging je van uit) data te doen. Waar rook is is vuur.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.