We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 2327
    • 214 Posts
    coté phpmyadmin, la base est en interclassement latin1_swedish_ci.
    C’est ça la bonne valeur ?je veux dire celle que je dois indiquer dans le configinc.php ?

    Coté Tiny..merci, compris. J’ai modifié la valeur dans le plugin....!

      • 2327
      • 214 Posts
      Bon , problèma absolument pas réglé..avec un de plus..mes accents ont pris des signes cabbalistiques bizarres dans le texte...
        • 5811
        • 1,717 Posts
        Je viens de faire le test en local chez-moi avec le même ordre et avec des accents. C’est ok je trouve bien les caractères accentués et je les mets bien en évidence. wink

        Dans ton cas, si le charset de ta page est en UTF-8 et que la base est en latin1, je ne suis pas étonné que tu puisses avoir des pbs. >:(
        Si tu n’utilises pas Ajax, essayes de mettre latin1 dans le charset ...
          • 2327
          • 214 Posts
          Merci de ton aide coroico...

          Ne pourrais-je plutpot modofier l’interclassement de ma base en utf8 ?
            • 5811
            • 1,717 Posts
            La difficulté vient du fait que lorsque tu tapes par exemple "année", il code le "é" sur 2 octets (codage UTF-8) et lorsque tu cherches dans la base, il doit convertit cette chaine dans le codage de la base (latin1) qui lui utilise un seul octet pour coder un caractère. De plus le résultat (codé en latin1) doit etre en reconvertit en UTF-8.

            C’est pour cela qu’il est préférable d’avoir le charset de sa base cohérent avec celui de ces pages, soit UTF-8 et utf8 (base) soit ISO-8859-1 et latin1(base). Voili, voilà ...

            Donc oui, le mieux est de convertir ta base en utf8. Pour cela sous phpMyAdmin 2.10.1 :
            1/ fait un export phpmyadmin des tables de ta base (celles en latin1)
            2/ fait une copie de sauvegarde du résultat de l’export dans un fichier par copier/coller de la fenêtre de résultats grin
            3/ crée une nouvelle base avec le bon interclassement (utf-8 general ci)
            4/ change le charset du fichier exporté en UTF-8 et ré-importe le dans la nouvelle base sous PhpMyAdmin. Puis croises les doigts ...

            Attention opération délicate, j’assure pas le service après-vente la-dessus.
              • 2327
              • 214 Posts
              Merci..dangeureux en effet, mais indispensable.....une recherche sans les accents, c’est comme...

              Bon, et pour le row de Tiny, je change rien ?

              Au fait, quand tu parles d’interclassement, c’est la base et les tables ou seulement la base ?

              Et côté Higllight, quel rapport (et désolé à cette heure....)
                • 5811
                • 1,717 Posts
                Autre chose, si ta base est en interclassement latin-1 l’export de tes tables via phpadmin 2.10.1 (en cochant les options : Ajouter DROP TABLE / DROP VIEW, Ajouter IF NOT EXISTS, Protéger les noms des tables et des champs par des "`" de PhpMyAdmin).

                devrait te donner des lignes du genre (MySQL 5.0.41) :

                DROP TABLE IF EXISTS `modx_categories`;
                CREATE TABLE IF NOT EXISTS `modx_categories` (
                `id` int(11) NOT NULL auto_increment,
                `category` varchar(45) NOT NULL default ’’,
                PRIMARY KEY (`id`)
                ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT=’Categories to be used snippets,tv,chunks, etc’;

                Il convient donc bien sûr de changer latin1 par utf8 sous un éditeur, de sauvegarder le fichier de sauvegarde en utf-8 et de le ré-importer le fichier avec la commande import de PhpMyAdmin en précisant que le fichier est codé en utf-8.

                De plus si la ligne : SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; en tête de fichier te génère une erreur lors du chargement, supprimes la et ré-importe le fichier.

                Si tu as des doutes sur la manip, je ne saurais trop te conseiller de faire des tests en local en te plaçant dans une config similaire et en créant une table bidon avec 2/3 lignes.

                Bonne manip
                  • 2327
                  • 214 Posts
                  Merci vraiment bp, Coroico.

                  En fait, j’ai modifié directement l’intercalssement de toutes les tables en UTF8 (c’est fastidieux..)...Je n’avais pas lu ton post...Tout est en Uft8, et le fichier config_inc déclaré tel.

                  Y’at tout qui baigne maintenant . Un grand Merci.

                  Seul double hic:

                  1) il m’a changé diverses chaines ou paires de caractères (les fi notemment) en signes cabalistiques que j’ai réctifié...Mais grâce à toi tout marche du tonnerre !

                  2) Dernier point : pas de highlight à l’horizon. Mais peut-elle est-ce un problème de css à spécifier quelque part ?

                  µmerci en tout cas grin grin grin grin
                    • 5811
                    • 1,717 Posts
                    Ok parfait. Changer à la mimine, effectivement c’est fastidieux mais en plus cela peut etre source d’erreur >:(

                    Concernant la mise en valeur des chaines (highlight) voici pour info le style css correspondant à mon site . Pour voir les résultats dans le mode ajaxSearch=0, tape "année" dans le champ de saisie puis dans la fenetre ajax : voir les autres résultats. (rien d’extraordinaire donc je ne suis pas sur que cela t’aidera beaucoup grin)
                    .AS_ajax_highlight, .ajaxSearch_highlight{
                      color : #CC0000;
                      padding: 0;
                      font-weight: bold;
                    }


                    Sinon le plus simple, sous firefox (cf http://modxcms.com/forums/index.php/topic,2636.msg130001.html#msg130001) c’est à l’aide du plugin web developper, section css, voir les styles d’un élement particulier, tu regardes quel est le style qui entoure le texte recherché dans ta page de résultats. Et tu vérifies que tu as bien défini le style pour mettre ce texte en valeur wink
                      • 2327
                      • 214 Posts
                      Merci beaucoup Coroico.

                      Ca marche très bien.

                      Juste une chose : le Search Highlighting marche dans la page de résultat, mais pas dans les liens correspondants lorsqu’on s’y rend (cela semble de même dans ton cas).

                      Pourtant, j’ai bien mis le <!--search_terms--> dans le template du doc...à moins qu’il faille le mettre à l’interieur du [*content*] ?

                      D’autre part, s’il est capable d’aller encadrer de span l’item recherché, pourquoi ne pourrait-il y emmener directement ? Ce serait chouette...!