Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

TinyMCE UTF-8 saving to MySQL Database

I send TinyMCE input to POST (a php file), then save it in MySQL Database.

The input has UTF-8 (Turkish characters). So when I type Türkçe inside the TinyMCE input and send it to post, PHP backend receives this string :

<p>T&uuml;rk&ccedil;e</p>

How can I convert it back to Türkçe so I can save it correctly in MySQL ?

P.S.:

MySQL is set to utf8_unicode_ci collation, so it can save UTF-8 characters correctly.

I need to convert them in PHP, I guess.

Or a way for TinyMCE to send them correctly?

Thanks for any help !

P.S. 2:

I think that this issue is about TinyMCE itself, so I guess the solution will be converting the TinyMCE output (either in TinyMCE javascript, or the receiving PHP script).

i.e. : I don't think changing my PHP configuration is the solution.

P.S. 3

I guess these characters like &uuml; are the HTML equivalents of Turkish characters, so htmlspecialchars_decode() should work, but it does not accept Turkish characters. Maybe a way for htmlspecialchars_decode to decode UTF-8 Characters ?

like image 290
jeff Avatar asked Dec 28 '13 12:12

jeff


1 Answers

Use this code

    <script type="text/javascript">
       tinymce.init({
           entity_encoding : "raw"
        });
    </script>
like image 194
Amit Avatar answered Sep 21 '22 16:09

Amit