Problème avec la base de données

5 posts in this topic

Posted · Report post

Depuis quelque temps, les inscriptions de nouveaux clients sur mon site marchand ne fonctionnent plus. Les informations ne sont plus transmises à la base de données. Je fonctionne avec la version 7.2.1 et Peel Premium acheté en 2015 (je ne me souviens pas de la version). Jusqu'à présent tout fonctionnait correctement.

Mon hébergeur pense qu'il s'agit d'un problème de SQL qui n'est pas à jour.

Quelqu'un a-t-il une idée de ce qui se passe ?

Merci d'avance.

PROBLEMES BASE DE DONNEES.jpg

Share this post


: post
Share on other sites

Posted · Report post

Bonsoir,

Suite à la lecture des messages d'erreur SQL dans votre image : votre hébergeur a changé de configuration MySQL et c'est ce qui vous pose problème. Le mode strict est toujours désactivé de manière standard sur les hébergements.
Je vous invite à consulter https://stackoverflow.com/questions/36374335/error-in-mysql-when-setting-default-value-for-date-or-datetime

Share this post


: post
Share on other sites

Posted · Report post

Merci pour votre réponse.

De leur côté, l'hébergeur que j'ai contacté m'envoie ce message :

" Est-ce que le fichier est à jour ?

Cela semble provenir de la récente version de MySQL. Votre script n'étant alors pas compatible avec les nouveaux strict_mode de mysql 5.7. Par contre, généralement les compagnies ont sortis des mises à jour pour rectifier, sinon, il est possible de modifier le script. "

Suis un lien vers un site de prestashop expliquant comment ils ont résolu le problème.

Il semble que Peel n'a pas fait de mise à jour pour la version 7 en tout cas.

Si je passe à la version 9 est-ce que cela résoudra le problème ? Et dans ce cas, le Peel premium acquis en 2015 est-il toujours utilisable ?

Share this post


: post
Share on other sites

Posted (edited) · Report post

Bonjour,

Votre hébergeur n'a aucun intérêt à imposer une configuration qui rompt la compatibilité avec la majorité des applications. Ce seront donc logique qu'il corrige sa configuration.
Il est historiquement usuel que des applications utilisent des dates à 0000-00-00 et non forcément NULL.
Néanmoins si vous voulez, cf. le lien que je vous donnais hier, vous pouvez mettre à chaque connexion MySQL dans lib/fonctions/database.php en fin de fonction "select_db" après les lignes contenant "SET NAMES" et avant la ligne return :

query("SET SESSION sql_mode = '' ", false, $database_object);

ou toute autre valeur que vous conseillerait votre hébergeur.

Edited by Gilles Boussin

Share this post


: post
Share on other sites

Posted · Report post

Merci pour toutes ces informations.

J'ai bien rajouté

query("SET SESSION sql_mode = '' ", false, $database_object);

au bon endroit, mais cela ne fonctionne pas.

Je cherche une autre solution.

En tout cas, merci pour vos messages.

Share this post


: post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

Twitter Advisto ecommerce

Facebook PEEL Shopping