Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
lat9
When you view your admin's Tools->Server/Version Info, what shows in that upper area?
What you described before
MySQL Slow Query Log Status: On
MySQL Slow Query Log File: server-slow.log
MySQL Mode: STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, TRADITIONAL, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
lat9
The default value should be an integer 0 (as you see in your database). The issue is that not only PHP but also MySQL implementations are getting more strict, so you can no longer store '' (an empty string) and have it be magically converted to a 0 when the database field is set to contain an integer value.
Of course it makes sense.
Is it possible to "trick" the system to include a meaningless value in the instance of GC orders? Or perhaps replace the empty values with the customer's own info therefore eliminating the error?
Just trying to figure out a different approach, that's all.
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
mvstudio
Of course it makes sense.
Is it possible to "trick" the system to include a meaningless value in the instance of GC orders? Or perhaps replace the empty values with the customer's own info therefore eliminating the error?
Just trying to figure out a different approach, that's all.
If you send me a copy of your version of /includes/classes/order.php to my direct email (if you don't have it, PM me), I'll give it a look.
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
mvstudio
What you described before
MySQL Slow Query Log Status: On
MySQL Slow Query Log File: server-slow.log
MySQL Mode: STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, TRADITIONAL, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
Does that show even after you've added that /admin/extra_datafiles file?
Re: Fatal Error when purchasing Gift Certificate
interesting.... one of my test sites has the following:
MySQL Mode: NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
when i add the mode of traditional into the admin area as described in the patch above, the mode changes as follows:
MySQL Mode: STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, TRADITIONAL, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
which seems to be a more restrictive mode to operate.
just an FYI.
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
lat9
Does that show even after you've added that /admin/extra_datafiles file?
Yes. I haven't removed the file you said to upload.
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
carlwhat
interesting.... one of my test sites has the following:
MySQL Mode: NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
when i add the mode of traditional into the admin area as described in the patch above, the mode changes as follows:
MySQL Mode: STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, TRADITIONAL, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
which seems to be a more restrictive mode to operate.
just an FYI.
I saw that https://dev.mysql.com/doc/refman/5.7...de_traditional
"Before MySQL 5.7.4, and in MySQL 5.7.8 and later, TRADITIONAL is equivalent to STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION.
From MySQL 5.7.4 though 5.7.7, TRADITIONAL is equivalent to STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION. The NO_ZERO_IN_DATE, NO_ZERO_DATE, and ERROR_FOR_DIVISION_BY_ZERO modes are not named because in those versions their effects are included in the effects of strict SQL mode (STRICT_ALL_TABLES or STRICT_TRANS_TABLES). Thus, the effects of TRADITIONAL are the same in all MySQL 5.7 versions (and the same as in MySQL 5.6). "
Maybe that's why it isn't changing on my site (?).
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
mvstudio
I saw that
https://dev.mysql.com/doc/refman/5.7...de_traditional
"Before MySQL 5.7.4, and in MySQL 5.7.8 and later, TRADITIONAL is equivalent to STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION.
From MySQL 5.7.4 though 5.7.7, TRADITIONAL is equivalent to STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_AUTO_CREATE_USER, and NO_ENGINE_SUBSTITUTION. The NO_ZERO_IN_DATE, NO_ZERO_DATE, and ERROR_FOR_DIVISION_BY_ZERO modes are not named because in those versions their effects are included in the effects of strict SQL mode (STRICT_ALL_TABLES or STRICT_TRANS_TABLES). Thus, the effects of TRADITIONAL are the same in all MySQL 5.7 versions (and the same as in MySQL 5.6). "
Maybe that's why it isn't changing on my site (?).
perhaps. you can try:
Code:
define('DB_MYSQL_MODE', 'NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION');
see if it changes, and if it does then see if it fixes your original GC error.
if it does not change, then perhaps you host does not allow changing of the sql_mode, but that is pure conjecture on my part...
good luck!
Re: Fatal Error when purchasing Gift Certificate
Quote:
Originally Posted by
carlwhat
perhaps. you can try:
Code:
define('DB_MYSQL_MODE', 'NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION');
see if it changes, and if it does then see if it fixes your original GC error.
if it does not change, then perhaps you host does not allow changing of the sql_mode, but that is pure conjecture on my part...
good luck!
OMG!!! Yes!!! It worked!! And GC purchases go through as they should!! You're AWESOME!!! Thank you so much!!!!
Re: Fatal Error when purchasing Gift Certificate
Spoke too soon. The button to release the GC is no where to be found. Can't release it at all.:no: