J’ai récemment déplacé mon site de one.com à ovh.fr.
Et depuis je ne peux plus créer de nouveaux articles, et quand je veux éditer un article, j’ai cette erreur :
« Une erreur technique a empêché l’enregistrement correct du champ ‹ date_modif › . »
Auriez-vous une idée de commander régler le problème ?
J’ai déjà essayé une réparation de la DB via la maintenance mais cela ne fonctionne pas et je n’ai pas de backup plus ancien pour régler ca.
Bonjour,
Les versions de SPIP étaient-elles les même d’un hébergeur à l’autre ?
Quelle technique utilisée pour déménager la base de données ? (privilégier l’export/import SQL au plus près de la base avec phpMyAdmin par exemple)
Il est possible que la base soit «corrompue».
Spip était dans une version ancienne 3, je ne sais plus a quel moment je suis passé en spip 4, avant ou après le déplacement.
J’ai fais un export import via mysql car la restauration ne fonctionnait pas via spip maintenance.
Avez-vous une idée comment réparer cette base de données ? Tout le site fonctionne bien à part la création et édition d’article. Je pense qu’il y a un problème au niveau des dates, car je ne peux pas éditer la date des articles, et ils ne sont plus affichés dans l’ordre chronologique (toujours problème de date), par contre en base de donnée les dates semblent correctes…
Le pbm ne serait-il pas lié au passage de MariaDB à mySQL 8 ? il me semble en tous cas que OVH est en mySQL, pour one.com je ne sais pas.
Je suggère ça car c’est un des points d’achoppement depuis que mariaDB et mySQL divergent, en particulier sur les champs date … sauf erreur de ma part.
En général les cas ou j’ai vu ça (pas sur Spip) c’est dû au fait que l’on tente d’enregistrer une date vide au format « 0000-00-00 00:00:00 » (ou approchant) qui n’est plus valide pour sûr en mysql8 (peut-être êtes vous passé d’un MariaDB un peu plus ancien qui acceptait ça) …
On peut dire à mySQL de les accepter (SET SQL_MODE=‹ ALLOW_INVALID_DATES ›;), peut-être tenter de passer cette commande avec phpMyAdmin et tenter ensuite de faire un article depuis Spip, ça permettrait peut-être d’écarter cette option …
Je mets bcp de conditionnel car je ne connais pas assez les entrailles de Spip pour être sûr, comme je le dis j’ai vu ce type d’erreur sur d’autres projets PHP et c’était causé par ce genre de chose mais je ne sais pas si ça fait du sens dans le cadre de Spip. Dans ces autres projets on ne pouvait pas éditer un enregistrement car un des champs conservait un « 0000-00-00 00:00:00 » (même pas celui qu’on souhaitait modifier) et mySQL refusait la mise à jour de l’enregistrement.
Après il faut peut-être explorer la base et comparer la structure des champs avec une installation qui fonctionne, vérifier que le moteur (myISAM, InnoDB, …) est conforme à une installation vierge, …
PS: pas sûr que la commande évoquée puisse être passée sur le phpMyAdmin d’un mutu OVH.