Problème d'installation OpenCart
Question
J'essaie d'installer OpenCart pour la première fois de ma machine locale.J'utilise XAMPP 1.7.4 PHP 5.3.4 et Windows7 est mon système d'exploitation.J'essaie de suivre toutes les étapes décrivent ici .Mais, après avoir donné le nom de base de données, nom d'utilisateur et mot de passe DB lorsque je appuie sur le bouton "Continuer", je reçois le message d'erreur suivant:
variable 'sql_mode' ne peut pas être réglé sur la valeur de 'no_auto_value_on_zero'
J'essaie de google avec ce message d'erreur mais je ne trouve rien.S'il vous plaît aidez-moi .....
La solution
Remove below line from opencart.sql
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"
you can find opencart.sql file in install folder
Above error comes if different version of mysql is being used.
Autres conseils
Change the lines of code from the following files:
install/cli_install.php
Search for
$db->query("SET @@session.sql_mode = 'MYSQL40'");
and replace with$db->query("SET @@session.sql_mode = ''");
install/model/install/install.php
Search for
$db->query("SET @@session.sql_mode = 'MYSQL40'");
and replace with$db->query("SET @@session.sql_mode = ''");
Becouse at this time are 5 results on google regarding to this.... and i didn't found SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO
I had similar problem. My problem was Error 1231,unable to SET SQL_MODE=MYSQL40 . Something like that.
I solved in this way:
go to system/database/mysql.php find line 50 or
trigger_error('Error: ' . mysql_error($this->link) . '<br />Error No: ' . mysql_errno($this->link) . '<br />' . $sql);
exit();
comment the
//exit();
- drop all your tables from database.
- refresh to resend
In this way the code will continue and the cart will be able to finish the configuration.
I hope it helped someone.
PS: I posted this on my website: w3bdeveloper.com
The issue is that "sql_code=MYSQL40" has been deprecated on MySQL since 5.7.22 (https://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_mysql40)
My solution is similar to @Yogesh Sanger. Instead of setting the sql_code value to an empty string, I just remove the line $db->query("SET @@session.sql_mode = 'MYSQL40'");
For those using Unix, here is a command to remove the culprit
sed -i '/MYSQL40/d' <OpenCart Directory>/install/cli_install.php
sed -i '/MYSQL40/d' <OpenCart Directory>/install/model/install/install.php