Php fatal error uncaught error class

Fixed: Elementor Broken After 3.6.0 Upgrade – PHP Fatal error: Uncaught Error: Class ‘Elementor\Scheme_Typography’ not found

Are you seeing your theme displaying blank after upgrading Elementor to 3.6.0 Or Are you seeing this error on your WordPress site:

PHP Fatal error: Uncaught Error: Class 'Elementor\Scheme_Typography' not found

We have had a large number of customers report this one recently so thought we would explain it here. Fortunately, this issue is reasonably straight forward. If you look further back in your error logs you should see the following

Deprecated: Elementor\Scheme_Typography is deprecated since version 2.8.0!

When you see deprecation messages it means that a function or class is now obsolete and it will be removed in a future release of the code. In this case Elementor has removed Elementor\Scheme_Typography in version 3.6.0 and when the upgrade was released or you auto upgraded to it this error started to occur.

Fix Part 1 : Rollback to Elementor 3.5.6

The quickest way to get your site operational again is to roll back to Elementor 3.5.6. You can use the inbuilt Elementor version control to roll back.

You can find the Version Control in Elementor >> Tools >> Version Control

Читайте также:  Точка роста информатика питон

To update your Elementor Version, simply head over to the “Elementor” page and click on the “Tools” then the “Version Control” tab and choose 3.5.6 from the drop down then click “Save Changes”.

Elementor Version Control

That’s it your site should be back and operational again. If your still seeing problems check to make sure any page caches you are running are cleared. If you are still seeing problems check your error log to see if there are different errors occurring now.

YOUR JOB ISN’T DONE YET. Please read Part 2 to complete the task.

Fix Part #2: Remove Deprecated Code

Ok the reason you are here is because a plugin or theme you are relying up uses the Deprecated code ‘Elementor\Scheme_Typography’ which has now been removed in Elementor 3.6.0. If you are using a theme or plugin that someone else built you need to contact support and report the issue so they can fix the code. If this is your code the solution is in the deprecation message

Deprecated: Elementor\Scheme_Typography is deprecated since version 2.8.0!Deprecated: Elementor\Scheme_Typography is deprecated since version 2.8.0! Use Elementor\Core\Schemes\Typography instead.

To fix this issue you need to find your references to Elementor\Scheme_Typography and change them to Elementor\Core\Schemes\Typography. Once you have done that you can allow Elementor to upgrade again.

When you are diagnosing issues regarding Elementor here are some handy links that can help

  • Elementor Change Log – This is the list of all changes made in each version of Elementor
  • Elementor Pro Change Log – This is the list of all change made in each version of Elementor Pro
  • Known Bugs and User Experience Issues – The list of known issues in Elementor releases
  • How To Rollback Elementor – The official guide to Elementor Rollback

Let us know in the comments if this fix worked for you.

Is it time for a better WordPress host?

Related Posts
How to migrate WordPress from FlyWheel to Wordify

Learn how to migrate your site from FlyWheel to Wordify and fix the errors caused by FlyWheels custom changes to WordPress core.

WordPress Development

Solving The WordPress Error “An Automated WordPress update has failed to complete” Caused By Flywheel’s Core Modifications

Flywheel, a managed WordPress hosting company, is known for its speed and reliability. However, we’ve observed a specific issue that has been causing trouble.

17 thoughts on “Fixed: Elementor Broken After 3.6.0 Upgrade – PHP Fatal error: Uncaught Error: Class ‘Elementor\Scheme_Typography’ not found”

Have a similar error but not the same. Teconce has not been able to come up with an answer for Mayosis. Hoping you might have a solution. Really not looking forward to having the entire site redesigned. Even though we have turned off updates of Elementor, out site has has fatal errors several times over the past month due to a conflict between Mayosis and Elementor. Any help you can provide would be appreciated.

Fatal error. Uncaught Error: Class “Elementor\Scheme_Typography” not found in /home/customer/www/spacehistory101.com/public_html/wp-content/plugins/mayosis-core/elementor/widgets/dual-button.php:249 Stack trace: #0 /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/elementor/includes/base/controls-stack.php(2280): Elementor\Double_button_Elementor_Thing -> _register_controls() #1 /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/elementor/includes/base/controls-stack.php(494): Elementor\Controls_Stack->init_controls() #2 /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/elementor/includes/base/widget-base.php(177): Elementor\Controls_Stack- >get_stack() #3 /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/elementor/includes/base.controls-stack.pho(300): Elementor\Widget_Base->get_stack #4 /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/elementor/includes/base/controls-stack.php(2369): Elementor\Controls_Stack->get_controls( in /home/customer/www/ourwebsite.com/public_html/wp-content/plugins/mayosis-core/elementor/widgets/dual-button.php on line 249

Hi Scott, From the error log the issue is happening in the mayosis-core plugin. You could try upgrading that or contacting the plugin provider to let them know that it’s happening. This specific issue will be in the file /home/customer/www/spacehistory101.com/public_html/wp-content/plugins/mayosis-core/elementor/widgets/dual-button.php. There will be a reference to Elementor\Scheme_Typography that needs to be changed to Elementor\Core\Schemes\Typography which is the new path for the Typography class. You could update that file replacing Elementor\Scheme_Typography with Elementor\Core\Schemes\Typography which should fix the problem however the supllier of the plugin really needs to fix the issue as any plugin updates will overwrite your change. I hope this helps.

Источник

PHP Fatal error: Uncaught Error: Class ‘mysqli’ not found in /var/www/html/

I am working with php(7.3) and mysql in linux machine. But I am getting PHP Fatal error: Uncaught Error: Class ‘mysqli’ not found in /var/www/html/ error in apache2 log file ( /var/log/error.log ). I checked few answers Fatal error: Class ‘MySQLi’ not found. But did’t work.

form-handler.php

connect_errno) < die("Connection failed: " . $conn->connect_error); > else echo "Connected successfully"; $username = $_POST["username"]; $password = $_POST["password"]; $query = "SELECT * FROM Users WHERE username = " . $username . " AND password mt24 mb12">
    debianmysqlphp
)" data-controller="se-share-sheet" data-se-share-sheet-title="Share a link to this question" data-se-share-sheet-subtitle="" data-se-share-sheet-post-type="question" data-se-share-sheet-social="facebook twitter " data-se-share-sheet-location="1" data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f4.0%2f" data-se-share-sheet-license-name="CC BY-SA 4.0" data-s-popover-placement="bottom-start">Share
)" title="">Improve this question
)">edited Jun 23, 2019 at 12:10
Jeff Schaller
66k35 gold badges112 silver badges247 bronze badges
asked Jun 19, 2019 at 13:49
2
    By "didn't work" means that you tried to install the mysql library? Does it apperar on phpinfo()?
    – schrodingerscatcuriosity
    Jun 19, 2019 at 14:08
    Yeah PHP is working fine.
    – Pushpam Kumar
    Jun 19, 2019 at 15:28
Add a comment|

3 Answers 3

Reset to default
5

You haven't told us which OS you are using. But since you've already mentioned apt-get then I'll assume that you're using something similar to Ubuntu or Debian. These have a relatively similar configuration setup.

Check 1

The package php-mysql should be dependent on php7.2-mysql or similar so firstly check that this is installed eg:

dpkg --list | grep 'php.*mysql' ii php-mysql 2:7.2+69ubuntu1 all MySQL module for PHP [default] ii php7.2-mysql 7.2.19-0ubuntu0.19.04.1 amd64 MySQL module for PHP

Do take a note of which version you have installed, if not 7.2 like my setup you will need to change later checks to match your version. Check 2 I've just looked at my Ubuntu 19.04 setup and mysqli has it's own shared library currently installed to belonging to the php7.2-mysql package and installed to /usr/lib/php/20170718/mysqli.so .

find /usr/lib/php -name mysqli.so 

Check 3 For PHP to use the module, it needs to be instructed to load it. Depending on the way you have setup PHP to run you may need to look in a different place. But for me, running PHP 7.2 under phpfpm, the instruction to load mysqli is located in: /etc/php/7.2/fpm/conf.d/20-mysqli.ini . Check to see if you have the module loaded with:

grep mysqli.so /etc/php/7.2/*/conf.d/* /etc/php/7.2/cli/conf.d/20-mysqli.ini:extension=mysqli.so /etc/php/7.2/fpm/conf.d/20-mysqli.ini:extension=mysqli.so 

Make sure that whichever way you are using PHP` is configured to load the module. If it is not configured to do so then you should be able to add back the configuration:

cd /etc/php/7.2/fpm/conf.d ln -s ../../mods-available/mysqli.ini 20-mysqli.ini 

Check 3 is the most likly to be the cause given the evidence you've shown, but it's also the mos easy to make a mistake on.

Источник

PHP Fatal error: Uncaught Error: Class 'mysqli' not found in /var/www/html/

I am working with php(7.3) and mysql in linux machine. But I am getting PHP Fatal error: Uncaught Error: Class 'mysqli' not found in /var/www/html/ error in apache2 log file ( /var/log/error.log ). I checked few answers Fatal error: Class 'MySQLi' not found. But did't work.

form-handler.php

connect_errno) < die("Connection failed: " . $conn->connect_error); > else echo "Connected successfully"; $username = $_POST["username"]; $password = $_POST["password"]; $query = "SELECT * FROM Users WHERE username = " . $username . " AND password mt24 mb12">
    debianmysqlphp
)" data-controller="se-share-sheet" data-se-share-sheet-title="Share a link to this question" data-se-share-sheet-subtitle="" data-se-share-sheet-post-type="question" data-se-share-sheet-social="facebook twitter " data-se-share-sheet-location="1" data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f4.0%2f" data-se-share-sheet-license-name="CC BY-SA 4.0" data-s-popover-placement="bottom-start">Share
)" title="">Improve this question
)">edited Jun 23, 2019 at 12:10
Jeff Schaller
66k35 gold badges112 silver badges247 bronze badges
asked Jun 19, 2019 at 13:49
2
    By "didn't work" means that you tried to install the mysql library? Does it apperar on phpinfo()?
    – schrodingerscatcuriosity
    Jun 19, 2019 at 14:08
    Yeah PHP is working fine.
    – Pushpam Kumar
    Jun 19, 2019 at 15:28
Add a comment|

3 Answers 3

Reset to default
5

You haven't told us which OS you are using. But since you've already mentioned apt-get then I'll assume that you're using something similar to Ubuntu or Debian. These have a relatively similar configuration setup.

Check 1

The package php-mysql should be dependent on php7.2-mysql or similar so firstly check that this is installed eg:

dpkg --list | grep 'php.*mysql' ii php-mysql 2:7.2+69ubuntu1 all MySQL module for PHP [default] ii php7.2-mysql 7.2.19-0ubuntu0.19.04.1 amd64 MySQL module for PHP

Do take a note of which version you have installed, if not 7.2 like my setup you will need to change later checks to match your version. Check 2 I've just looked at my Ubuntu 19.04 setup and mysqli has it's own shared library currently installed to belonging to the php7.2-mysql package and installed to /usr/lib/php/20170718/mysqli.so .

find /usr/lib/php -name mysqli.so 

Check 3 For PHP to use the module, it needs to be instructed to load it. Depending on the way you have setup PHP to run you may need to look in a different place. But for me, running PHP 7.2 under phpfpm, the instruction to load mysqli is located in: /etc/php/7.2/fpm/conf.d/20-mysqli.ini . Check to see if you have the module loaded with:

grep mysqli.so /etc/php/7.2/*/conf.d/* /etc/php/7.2/cli/conf.d/20-mysqli.ini:extension=mysqli.so /etc/php/7.2/fpm/conf.d/20-mysqli.ini:extension=mysqli.so 

Make sure that whichever way you are using PHP` is configured to load the module. If it is not configured to do so then you should be able to add back the configuration:

cd /etc/php/7.2/fpm/conf.d ln -s ../../mods-available/mysqli.ini 20-mysqli.ini 

Check 3 is the most likly to be the cause given the evidence you've shown, but it's also the mos easy to make a mistake on.

Источник

Оцените статью