[OJS 3.2.0-3] Submissions disappeared post upgrade

Recently I have updated ojs 3.1.1. to 3.2.0-3, but when I Changed
the Localization Settings to:

[i18n]

; Default locale
locale = en_US

; Client output/input character set
client_charset = utf8

; Database connection character set
; Must be set to “Off” if not supported by the database server
; If enabled, must be the same character set as “client_charset”
; (although the actual name may differ slightly depending on the server)
connection_charset = utf8

My Farsi fonts are unfortunately not readable and the submissions can be seen on the Admin’s submission page.

BUT when I change to
client_charset = utf-8
connection_charset = utf-8
My Farsi Fonts are fortunately readable but ALL the submissions are unfortunately hidden on the Admin’s submission page and I no longer have access to them, which is very frustrating.

Also my:
@@character_set_database @@collation_database
are
latin1 latin1_swedish_ci

The journal Submissions’ Abstracts do not support utf8. When the I type farsi fonts they are disappeared after I save them.
Please Please can any body HELP me ASAP

Hi @Ahmad_R_Beigi,

For a proper UTF-8 configuration, the config.inc.php settings should be

client_charset = utf-8

and

connection_charset = utf8

The discrepancy between the two forms is intentional – different libraries we use in OJS expect different forms.

Also ensure that your database’s default character set is set to utf8. I do this by creating my databases with

CREATE DATABASE mydatabasename DEFAULT CHARACTER SET utf8;

…but you should also be able to change this after your database has been created; check MySQL’s documentation.

Regards,
Alec Smecher
Public Knowledge Project Team

1 Like

Thank you
But I already have a database. Should I Install the site with a new database and then update the new database with the old database?
With respect, May I send you my database and config.inc.php so that you can set them?
Thanks

Hi @Ahmad_R_Beigi,

Changing the default character set is more of a MySQL question than an OJS question; see e.g.: How to convert a MySQL database to UTF-8

However, as you work through this, be very careful to make sure that you aren’t introducing a mix of data in different character sets – this can be very difficult to disentangle. If your data is in one character set before upgrade, and another character set after upgrade, then converting between those two configurations will always leave part of your data incorrectly encoded.

The best solution, if it’s possible, is to re-run your upgrade with the right character set configuration. This will ensure consistency. This will depend on whether you have new data created since the upgrade that you need to preserve, however.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi asmecher
I re-ran the upgrade with the right character set configuration. I installed the OJS3.2.0.3 again and created a new database. My Farsi fonts are still unfortunately not readable and the submissions can be seen on the Admin’s submission page.
Here are my present Default locales on Config.inc.php
locale = en_US
; Client output/input character set
client_charset = utf-8
connection_charset = utf8

P.S: With respect please solve this problem in OJS3.2.0.4.
Mamnoon = Thank you
Regards,

Hi @Ahmad_R_Beigi,

Are you still seeing latin1 for your database character set (e.g. latin1_swedish_ci) as you saw originally?

Regards,
Alec Smecher
Public Knowledge Project Team

The following query Shows:
SELECT @@character_set_database, @@collation_database
Results in:
|@@character_set_database|@@collation_database||

|latin1 |latin1_swedish_ci|

The database has been kept empty to get instructions from you. I will wait.
P.S: Basically, ojs means transfer of fonts. I think you need a special plugin ONLY for fonts.
Regards

Hi @Ahmad_R_Beigi,

That’s definitely still the wrong character set configuration in your database; did you try the instructions I posted above?

Regards,
Alec Smecher
Public Knowledge Project Team

OJS 3.2.1.1 solved my problem thanks