We used the iso-8859 characters set for web pages, and default latin set for mysql, and due to our site may send information to 3rd party, we don't know what encoding the 3rd party use. for all these sepcial characters, such as copyright, trademark, euro, we always use the html entities, this guaranteed to be working when our data sent to 3rd party.
Now, the trend is using utf-8 character sets for web pages, and we already use it in our static sites design now. but for the mysql database backend web sites, i am evaluating the options.
As I knew zen-cart still use the default latin characters set for mysql and iso-8859 for web pages last time when i checked their site.
So here are my questions
1) should my mysql database backend sites use utf-8 for the web page character sets now? what are the advantages and what should i be aware of? Or I can wait for a while, zen-cart not change yet, it got be some reasons there for them to still use the iso-8859 at this moment.
2) if the web page is set up using utf-8. what the mysql set up should be? can i still use the default latin for mysql character sets, or i have to change the mysql set up to utf, both the mysql chatacter sets and mysql collations?
3) if I have to change the msyql character sets and collations from the default latin to utf-8, what should i be aware of? are there some functions of mysql will not work as the default latin character sets if i use utf-i character set instead?
4) right now, due to we use htmlentities to take care of the special chacters in the data saved in database, so our old site database still use default mysql character sets and collations, and our web pages changed to utf-8 chacter sets, everything is working fine. What should I be aware if mysql is still on default set up and web page is on utf-8?
5) if i have to transfer the mysql database and its data from default latin characters set to utf-8 characters set, what should i be aware?
6) it seems a drawback or a little bit time waste that for all the special characters, we have to replace them with html entities when we save them in database and pass them to 3rd party sites. But it seems the only way that will work universal. We still should keep this practice, right?
Thanks!