MODX Community

PHP 7.4 and login

My website (and other websites I’m managing) are running on the latest MODX-version and all Extra’s are up to date.
My webhost has changed the PHP-version tot 7.4. and as a result of that I can’t login. On the login page this message appears:
Deprecated : Unparenthesized a ? b : c ? d : e is deprecated. Use either (a ? b : c) ? d : e or a ? b : (c ? d : e) in /home/plg***/domains/l******.nl/public_html/core/model/modx/modx.class.php** on line 678

Turning PHP back tot 7.3 solves the problem for now. I really want to know why my website (and some others) have problems with the latest PHP-version.

Does anyone know what’s going on here and how I can fix it?

Modx does not support PHP7.4 (doesn’t mean it won’t work) and most of the extras don’t support PHP7.4 either.
https://docs.modx.com/current/en/getting-started/server-requirements

MODX will run fine on most shared/cloud hosting, as well as VPS and dedicated boxes. MODX is written in PHP, typically uses a MySQL database, and needs a webserver like Apache or nginx to serve web requests.

Component Minimum Recommended
PHP 5.6.x 7.2 or 7.3
Database Latest MySQL 5.6.x MariaDB 10.1.x or Percona Server 5.6.x or above
Webserver * NGINX 1.8 or Apache 2.4

Thank you. I didn’t know that. I assume that MODX will support 7.4 in time.

I’m running quite a few MODX instances on PHP 7.4 without issue. I’m using the login extra (just the Login snippet) on one of them too.

When you say “On the login page this message appears” do you mean the manager login or a web context login?

If that’s a production site, it’s probably best to get the host to turn off error messages from showing publicly like that too.

What have you got showing in the MODX error log when you switch to PHP 7.4?

Edit: If it won’t let you log in to the manager on 7.4, have a look at the error log file in /core/cache/

Nothing on that page says 7.4 isn’t supported.

thank you for replying. The error-message appeared on the manager login page. The strange thing is that some sites are running without problems on php 7.4. and some others don’t.
Maybe the problem is installing by Installatron. All the sites I’ve installed manually don’t have this issue. I will look into it.