I can't update ojs from 3.1.0.1 to 3_1_2_4,

Together with the greeting and the hope that you are well, I hope you can help me with this problem.
I tried to update ojs from version 3.1.0.1 to the last one, which is 3_1_2_4, but I could not, when installing the latest version (for now in my virtual machine) nothing appears, I have given permissions to the folder and nothing happens

chown -R www-data: www-data / var / www /

chown -R $ user: $ user / var / www /

chmod 755 -R / var / www /

imagen

the page is in white, I have php7, mysql 5.6 in debian 10.

Hi @gmorales

If you’re getting blank screens, there are probably “Fatal Errors” in your PHP error log. Can you look please?

Cheers,
Jason

I had a similar problem. Found an error in my php log mentioning mb_split (I think this was the name). I needed to install this php module to get the site working again. something like

$ sudo apt-get install php-mbstring

Maybe you have a similar problem?

HI,

Thanks for responding, regards, try using sudo apt-get install php-mbstring but apparently it was already installed, the log in the address /var/log/apache2/error.log that appears is:

[Vie 24 de enero 09: 26: 19.395547 2020] [php7: error] [pid 683] [cliente 192.168.231.1:52677] Error fatal de PHP: require (): Se requiere una apertura fallida './lib/pkp/ incluye / oído. inc.php ‘(include_path =’ .: / usr / share / php ') en /var/www/index.php en la línea 65

in the log this address appears in $ application = require (’./ lib / pkp / includes / bootstrap.inc.php’);
when I go to the lib / pkp / folder it appears empty

I have downloaded this ojs from:

Hi @gmorales

From your original post, it looks like your permissions are now a bit of “whack”, so to speak. But let’s start at the beginning. My first suggestion is to roll back your database from a backup, and get your original installation running on 3.1.0.1. Is that possible at this point?

Cheers,
Jason

hi @jnugent,

A pleasure to greet you, I am very sorry for the delay, I commented that I did the test by moving the original ojs(version 3.1.0.1) from server1 (debian 7) to server2 (debian 10), but the page also looked white. On the servers, the requirements they need to work with their respective versions of php and mysql are installed, that is, for server1 (debian 7 → php 5.6 and mysql 5.5) and for server2 (debian 10 → php7 .3 and mysql 5.6)

I tried to import the previous database (version ojs 3.1.0.1) and the page was blank.

This is the last record of the log
Mon January 27 15: 13: 42.507442 2020] [php7: error] [pid 13466] [client 192.168.20.120:64578] PHP fatal error: Error not captured: Call to undefined function mysql_connect () in / var / www / lib / pkp /lib/adodb/drivers/adodb-mysql.inc.php:456\nStack trace: \ n # 0 /var/www/lib/pkp/lib/adodb/adodb.inc.php(558): ADODB_mysql → _ connect (‘localhost’, ‘xxxx’, ‘xxxxx’, ‘’) \ n # 1 /var/www/lib/pkp/classes/db/DBConnection.inc.php(144): ADOConnection- > Connect (‘localhost’, ‘’, ‘xxxxx’, xxxxx’, false) \ n # 2 /var/www/lib/pkp/classes/db/DBConnection.inc.php(119): DBConnection-> connect () \ n # 3 /var/www/lib/pkp/classes/db/DBConnection.inc.php(76): DBConnection-> initConn () \ n # 4 / var / www / lib / pkp / classes / db / DBConnection. inc .php (52): DBConnection-> initDefaultDBConnection () \ n # 5 /var/www/lib/pkp/classes/db/DBConnection.inc.php(220): DBConnection → __ construct () \ n # 6 / var /www/lib/pkp/classes/core/PKPApplication.inc.php(166): DBConnection :: getInstance () \ n # 7 / var / www / clas ses / core / Application.inc.php (38) : PKPApplication-> __ construct () \ n # 8 /var/www/lib/pkp/includes/bootstrap.inc.php(58): Application → __ construct () \ n # 9 / var / www / index. php (65): require (’/ var / www / lib / pk …’) \ n # in / var / www / lib / pkp / lib / adodb / drivers / adodb-mysql.inc.php online 456

hi @sgr

Thanks for responding and sorry for the delay, apply that line in the prompt and it was already installed

Hi @gmorales,

Note that your post accidentally included your MySQL credentials – please change them immediately, and be careful not to post these!

See e.g. Uncaught Error: Call to undefined function mysql_connect() on how to correct the error message you see in your log

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @asmecher

Thanks for the recommendation, I will take it into account in future publications, after seeing the publication you mentioned I changed the driver in the config.ini file from mysql to mysqli, and in the registry I receive another message that is the following;

[Mon Jan 27 16:05:22.443195 2020] [php7:error] [pid 15346] [client 192.168.20.120:64982] PHP Recoverable fatal error: ini_set(): Cannot set ‘user’ save handler by ini_set() or session_module_name() in /var/www/lib/pkp/classes/session/SessionManager.inc.php on line 36

I have that version:

imagen

Hi @gmorales,

It sounds like you’re running an old version of OJS – that was fixed starting with OJS 2.4.8-4 (for OJS 2.x) and OJS 3.1.1 (for OJS 3.x). Upgrading to something newer will fix it.

Regards,
Alec Smecher
Public Knowledge Project Team

Now I have uploaded version ojs-3.1.2-4 to the server, the blank screen still appears, however, the log changed:

[Mon 27 January 16: 56: 02.271449 2020] [php7: error] [pid 15740] [client 192.168.20.120:63117] PHP fatal error: Error not captured: undefined function call xml_parser_create () in / var / www / lib / pkp / classes / xml / XMLParser.inc.php: 229 \ nStack trace: \ n # 0 /var/www/lib/pkp/classes/xml/XMLParser.inc.php(178): XMLParser-> createParser () \ n # 1 /var/www/lib/pkp/classes/xml/XMLParser.inc.php(220): XMLParser-> parseTextStruct (’<? xml version = "…’, Array) \ n # 2 / var /www/lib/pkp/classes/db/XMLDAO.inc.php(55): XMLParser-> parseStruct (‘lib / pkp / registr …’, Array) \ n # 3 / var / www / lib / pkp /classes/i18n/TimeZoneDAO.inc.php(58): XMLDAO-> parseStruct (‘lib / pkp / registr …’, Array) \ n # 4 / var / www / lib / pkp / classes / cache / GenericCache .inc.php (63): TimeZoneDAO → _ timeZoneCacheMiss (Object (FileCache), NULL) \ n # 5 /var/www/lib/pkp/classes/cache/FileCache.inc.php(115): GenericCache-> get (NULL) \ n # 6 / var / www / lib / pkp / classe s / i18n / TimeZoneDAO.inc.php (77): FileCache-> getContents () \ n # 7 / var / www / lib / pkp / classes / i18n / PKPLocale.inc.php (728): TimeZoneDAO → getTimeZones ( ) \ n # 8 / var / www /lib/pkp/classes/i18n/PKPLocale.inc.php(145): PKPLocale :: getTimeZone () \ n # 9 / var / www / lib / pkp / classes / core / Dispatch in / var / www / lib / pkp / classes / xml / XMLParser.inc.php on line 229

Hi @gmorales,

Try searching for undefined function call xml_parser_create, either in this forum or on Stack Overflow.

Regards,
Alec Smecher
Public Knowledge Project Team

Thanks for your help, I was able to solve the problem by applying the following line in the promp

apt-get install php-xml

that appears in this stackoverflow solution.

1 Like