Old database convertions script (deprecated)

Notes on utf8mb4-conversion.php

Please note: This is technical content suitable only for individuals with software development skills; it is not intended for general Zen Cart users. Work with your developer if this is beyond your knowledge and capabilities.

The old converter is the plugin Convert db2utf8 which was also stored in Github as utf8mb4-converter.

Please note this older version of the converter is no longer recommended; see Converting to UTF8 for up to date instructions.

Issues with the old converter under PHP 8

The old converter would fail silently when error conditions occurred if run under PHP 8. The new converter has fixed this issue.

Issues with the old converter (prior to 03/05/2021)

Versions of the old converter utf8mb4-conversion.php and the older version, which was called latin1-to-utf8-conversion.php, prior to 03/05/2021 had an issue with incorrectly removing default values during the conversion. A script exists to fix this issue; see the section “Missing Defaults” in the readme file for https://github.com/zencart/utf8mb4-converter.

Please note this issue only affects people who ran versions of this script prior to 03/05/2021.

You will know you have this issue if database insert operations are failing because fields don’t have default values. For example, creating a new admin will fail with

--> PHP Fatal error: 1364:Field 'prev_pass1' doesn't have a default value :: INSERT INTO admin
SET admin_name = 'admin',
admin_email = '[email protected]',
admin_pass = '....',
admin_profile = 1,
pwd_last_change_date = now(),

You can also tell by schema inspection if you have this problem - instead of

  prev_pass1 varchar(255) NOT NULL default '' 

you will see

  prev_pass1 varchar(255) NOT NULL 

Similarly, creating a new customer account will fail with a message like

--> PHP Fatal error: 1364:Field 'customers_referral' doesn't have a default value :: INSERT INTO zen_customers 

Still have questions? Use the Search box in the upper right, or try the full list of FAQs. If you can't find it there, head over to the Zen Cart support forum and ask there in the appropriate subforum. In your post, please include your Zen Cart and PHP versions, and a link to your site.

Is there an error or omission on this page? Please post to General Questions on the support forum. Or, if you'd like to open a pull request, just review the guidelines and get started. You can even PR right here.
Last modified August 16, 2023 by Scott C Wilson (73aed01).