×
Blue Eagle 5 v1.5.4 has been Released (13 Sep 2020)

The Kunena team has announce the arrival of Kunena template Blue Eagle 5 v1.5.4 which is now available for download. This version addresses most of the issues that were discovered in development.

× Les sujets sont déplacés dans ce domaine ne sont fermés parce qu'ils se rapportent à des versions non prises en charge de Kunena.

Idea [Réglé] SQL / Une requête pour remplacer des chaînes de caractères dans les messages

More
10 years 6 months ago - 10 years 6 months ago #1 by chr!x
Bonjour,

Cette question n'est pas à proprement parlé sur KUNENA, mais vu qu'elle le concerne quand même un peu, j'ai jugé utile de vous la soumettre en premier lieu, avant de me tourner vers d'autres lieux d'entre-aide. La voici.

Lors de mon passage à SMF / Fireboard / Kunena, la conversion des messages n'a pas été une totale réussite. Notamment concernant les caractères latins (certainement en raison de charset différents). Résultat, certaines chaines de caractères ont été remplacées par des caractères cabalistiques. Exemple :

à‡ <= Ç
à´ <= ô
à‰ <= É
à» <= û
ࢠ<= â
௠<= ï
etc...


Il en va de même pour certains BBCODE qui n'ont pas la même dénommination :

<=

    <=
    etc...


Il est impensable d'éditer un à un tous les messages pour les corriger. Par contre, je pense qu'il doit être envisageable par le biais de PhpMyAdmin de faire une requête SQL qui remplace les occurrences souhaitées par d'autres. Mais vu que je suis nullissime en SQL, je ne sais pas comment m'y prendre.

Qui pourrait me donner la bonne requête ?

D'avance, merci :)
Last edit: 10 years 6 months ago by chr!x.

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago - 10 years 6 months ago #2 by xillibit
Bonjour,

Avec mysql tu peux faire des regex mais uniquement sur la sélection de choses dans la base. Avec un script php et des regex tu dois pouvoir t'en sortir.

Tu sélection tous le contenu des certaines tables avec un SELECT * FROM matable, tu utilise un preg_match() pour remplacer certaines occurrences par ce que tu veux et tu re-insère le contenu dans les tables au même endroit.

I don't provide support by PM, because this can be useful for someone else.
Last edit: 10 years 6 months ago by xillibit.

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago #3 by chr!x
Ca a l'air alléchant sur le papier. Non pas que je sois feignant, mais serait-il possible d'avoir un bout de script fonctionnel, car je me répète, mais je suis incapable d'élaborer des requêtes SQL (pas les connaissances).

Désolé de faire l'assisté, et merci pour votre aide.

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago - 10 years 6 months ago #4 by chr!x
Cette fonction (voir aussi ici) est-elle appliquable selon vous ?
Last edit: 10 years 6 months ago by chr!x.

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago #5 by xillibit
Je ne connaissais pas cette fonction, oui dans ton cas elle marchera. N'oublie de faire une sauvegarde de ta base de donnée dans un lieu avant de faire quoi que ce soit.

I don't provide support by PM, because this can be useful for someone else.

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago #6 by chr!x
J'ai des palpitations rien qu'à l'idée de lancer cette commande... :S

Je ferai donc l'essai ce soir, à tête reposée, chez moi. Et je ne manquerai pas de vous tenir au courant. Merci merci ;)

Please Log in or Create an account to join the conversation.

More
10 years 6 months ago #7 by chr!x
J'ai résolu mon problème... en le contournant :P

Après avoir importé en local la table messages_text afin d'en avoir une copie saine avant de balancer ma requète SQL, j'ai eu la curiosité d'ouvrir le dump avec Textwrangler, puis j'ai fais des rechercher/remplacer massifs. Puis j'ai killé la table avec PMA, je l'ai réimporté, et tout beigne :woohoo:

Trop bien d'être feignant B)

Please Log in or Create an account to join the conversation.

  • Not Allowed: to create new topic.
  • Not Allowed: to reply.
  • Not Allowed: to edit your message.
Time to create page: 0.136 seconds