CalcBuilder Forum

How to change latin1_swedish_ci to utf8?

Usuario moon_1193 2013-07-26 20:32:05

I've installed the component. After I tried to fill as example a description field in russian I've got ??????.
In phpMyAdmin I see all calcbuilder tables in latin1_swedish_ci charset.
How to change them to UTF8 and how to make utf8 as default charset. Or tell me please other way to solve the problem with russian language.





Thank you.

Edited by moon_1193 - 28.07.2013 12:02

Edited by moon_1193 - 28.07.2013 12:07

Moonsoft support 2013-07-29 09:13:02

Hello,

Calcbuilder doesn´t create tables with predefined Charset, it uses the default one in database. You should change character set and collation using SQL (more info at http://dev.mysql.com/doc/refman/5.1/en/charset-table.html) or using phpmyadmin, in table options.

Calc Builder is tested and used in languages like Russian, Greek, English, Chinese and more.

Regards,

Usuario moon_1193 2013-07-29 10:09:48

Yes, I understand. But by default it installed with latin_swedish charset. So if I change all calcbuilder tables to Utf8 (as defoult on my site) will I get normal letters insead ??????
I doubt you woild be able to test the Russian language with the latin_swedish charset.
Thank you.

Moonsoft support 2013-07-29 10:29:19

Hi,
when component is installed, it doesn't fix the charset, the create table script is as follows:

CREATE TABLE IF NOT EXISTS `#__calcbuilder_matrix` (
`id` int(11) NOT NULL AUTO_INCREMENT,
.......
`value` longtext,
PRIMARY KEY (`id`)
) AUTO_INCREMENT=1 ;

So when executed, your default database charset is applying. So we suspect your database is setting latin1 by default, if executed on other server, for ex on our local or test server, the table is created with utf8, so we can use greek, russian, and other languages.

If you change the tables to utf8 you will also be able to save those characters, although you may have to save again the texts, in order to store properly the values with the new encoding at your db.

To change the encoding you can use the alter table script we commented above, please contact again if you need more help with this issue.

Regards

Usuario moon_1193 2013-07-29 11:33:23

The default language of my database is UTF8.

Moonsoft support 2013-07-29 11:59:12

Hi,
maybe your language is set to utf8, but the default charset and/or collation can be still set to latin1_swedish.
Please check your joomla admin, go to site->system information, and check which is the value of the parameter

Database Collation

That should be the default value used to create the tables, as we don't set any variable or parameter to latin1, not mention swedish. Latin1 is the charset by default and swedish the collation by default for most database clients, so it's not strange yours is applying that configuration as well.

Once created, you can change the charset of the table with the alter instruction we sent, please contact again if you need more help regarding this.

Regards


Edit: we just noted you're using phpmyadmin. You can also confirm you have all variables of your db set to utf8 going to variables at the main panel. There you will find a set of parameters beginning with

character set

and

collation

maybe any of those parameters are forcing the tables to be created with latin1 charset.

Also using phpmyadmin you can change easily the charset/collation of an existing table and depending on the version, of specific columns. Select one table and go to operations. You have options there to modify the table settings.

Edited by MSTeam - 29.07.2013 12:10

Usuario moon_1193 2013-07-29 14:06:24

Thank you. It works.
I changed charset and after that made collation.

...
List Manager

Build different lists for your site

Buy now!
...
CalcBuilder

Create dynamic calculators

Buy now!