View Issue Details

IDProjectCategoryView StatusLast Update
0020134phpList 3 applicationInterface - Backendpublic02-01-20 14:26
Reporterdmageiras Assigned To 
PrioritynormalSeverityminorReproducibilityhave not tried
Status newResolutionopen 
Product Version3.4.8 
Target Version3.4.9 
Summary0020134: utf8 support for campaign subject
DescriptionHi all!
Thanks for the excellent project. Campaign subject does not seem to support utf8, thus I cannot place emoticons. Emoticon open format (=?utf-8?q?=F0=9F=94=A8?=) seems to work when combined with latin characters, but it doesn't work when combined with greek characters. Using a solution for encoding both emoticons and greek chars (like this renders subject ok for the newsletter recipient, but campaigns list still shows the encoded text in the open format (like this =?UTF-8?B?8J+UpSDOnM ... IPCflKU=?=).
Campaign lists are messy with this long texts and confusing.
If you need further help on this feel free to contact me.
TagsNo tags attached.



18-12-19 18:22

updater   ~0062911

This appears to be similar to

If you change the database to use utf8mb4 instead of utf8 then emojis should work. I think that the change needs to be applied at the colum level but you probably only need to change a few tables such as message and messagedata if you want to use emojis only in campaigns.


02-01-20 14:02

reporter   ~0062931

Just changed the database field subject to utf8mb4 like this: "alter table phplist_message change subject subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci;"
but still the problem remains.

To be more exact:

- I copy an emoticon to subject line, the system sends a message with 4 question marks (????) in the subject line and it also stores four questions marks (????) to the column subject.
- I copy =?utf-8?q?=F0=9F=94=A8?= to the subject line. I get a message with a proper emoticon. The system stores =?utf-8?q?=F0=9F=94=A8?= to the database. The phplist backend display =?utf-8?q?=F0=9F=94=A8?=.
- I copy =?utf-8?q?=F0=9F=94=A8?= and any latin charaters (let's say: =?utf-8?q?=F0=9F=94=A8?= TEST). The message sent has a proper emoticon and the word TEST as expected. The database and the backend display =?utf-8?q?=F0=9F=94=A8?= TEST.
- I copy =?utf-8?q?=F0=9F=94=A8?= TEST and some greek characters (=?utf-8?q?=F0=9F=94=A8?= TEST ΑΒΓΔ). The message sent has not an emoticon any more.


02-01-20 14:26

updater   ~0062932

You also need to alter the messagedata table because most of the message fields are duplicated there.