Bienvenue invité ( Connexion | Inscription )
![]() ![]() |
13 May 2011, 12:46
Message
#1
|
|
|
Ceinture orange+ OSC Groupe : Membres Messages : 474 Inscrit : 16-May 02 Lieu : Oise Normande pays de bray Membre no 183 |
Bonjour à tous,
Je modifie le fichier "advanced_search_result.php" de façon a pourvoir rechercher "aussi" les mot accentués dans la description. Donc je pense me servire de (addslashes)... J'ai regardé sur plusieur pages de OSC avec cette fonction, mais l'écriture est toujours différente. Voici le code : Code $where_str .= "(pd.products_name like '%" . tep_db_input ($keyword) . "%' or p.products_model like '%" . tep_db_input ($keyword) . "%' or pd.products_head_keywords_tag like '%" . tep_db_input($keyword) . "%' or m.manufacturers_name like '%" . tep_db_input ($keyword) . "%'"; if (isset($HTTP_GET_VARS['search_in_description']) && ($HTTP_GET_VARS['search_in_description'] == '1')) $where_str .= " or pd.products_description like '%" . tep_db_input($keyword) . "%' or pd.products_head_keywords_tag like '%" . tep_db_input($keyword) . "%'"; $where_str .= ')'; break; Donc évidement le "addslashes" dans tous cela, je ne sais pas trop ou le mettre...?? Alain Ce message a été modifié par AL1 - 13 May 2011, 12:47. -------------------- Oscommerce : 2.2 MS2 | AdminMS2fr V2.3 | BoxImageThemaMS2fr V2.7 | Definemainpage v1.3.3 | MenubarV1 | WYSIWYG HTMLArea v1.7 FR | Sendorderhtmlemail v54 | Header Tags Controller v2.3.2 | Ultimate SEO URLs 2.2.2 | xsell_1_2_1 | PayPal_IPN-v2.3.3 | visibles country v1.1b | popup_image by grunt | step_by_step_orders_v1.7 | fckeditor-oscommerce_V2 | featured_products | Discount Coupon Codes 3.3. | Account Balance (gift certificate redemption) | N° facture séquentiel par Blanche Neige.
Projet en cours de finition : Oscommerce : 2.3.3 FR | Ultimate_Seo_Urls_5_PRO_r205 | X_Sell_For_2.3.1_v3.0 | ipuv205A_for_osc231 | Instructions utf8 latin1 (Règle une bonne fois pour toute les problème d'accent) | AJAX attribute manager for 2.3.1 v2 mise à jour v2.8.10 | Category Description for OSCommerce 2.3.1 v1.08 | Product Attributes Sort Order v1.83a | Easy Populate v2.8-231 for osCommerce v2.3.1 | Quick_updates v2.9.2 | Theme Switcher v1.4.2 (retiré) | Fancier Invoice & Packing Slip for OSC 2.3.1 + Adaptation - Numéro de facture séquenciel par Blanche Neige | Dynamic Template System v2 | Order editor for2.3 v1.3 | Product Tabs V1.1 | KissIT - image Thumbnailer v1.0.0 | Option Types v2.3.1 |
|
|
13 May 2011, 16:37
Message
#2
|
|
|
Ceinture jaune OSC Groupe : Membres Messages : 41 Inscrit : 30-January 07 Membre no 14996 |
Bonjour,
Tu dois tout simplement le placer sur $keyword , de préférence avant la déclaration de $where_str. En gros Citation $keyword=addslashes($keyword);
|
|
|
13 May 2011, 18:21
Message
#3
|
|
|
Ceinture orange+ OSC Groupe : Membres Messages : 474 Inscrit : 16-May 02 Lieu : Oise Normande pays de bray Membre no 183 |
Hello neji,
bon j'ai fait une modifs selon tes indications comme cela: Code if (isset($search_keywords) && (sizeof($search_keywords) > 0)) { $where_str .= " and ("; for ($i=0, $n=sizeof($search_keywords); $i<$n; $i++ ) { switch ($search_keywords[$i]) { case '(': case ')': $keyword = addslashes($keyword); break; case ')': $where_str .= " " . $search_keywords[$i] . " "; break; case '+': $where_str .= " and "; break; case '*': $where_str .= " or "; break; default: $keyword = tep_db_prepare_input($search_keywords[$i]); $where_str .= "(pd.products_name like '%" . tep_db_input ($keyword) . "%' or pd.products_description like '%" . tep_db_input ($keyword) . "%' or p.products_model like '%" . tep_db_input ($keyword) . "%' or pd.products_head_keywords_tag like '%" . tep_db_input ($keyword) . "%' or m.manufacturers_name like '%" . tep_db_input ($keyword) . "%'"; if (isset($HTTP_GET_VARS['search_in_description']) && ($HTTP_GET_VARS['search_in_description'] == '1')) $where_str .= " or pd.products_description like '%" . tep_db_input($keyword) . "%' or pd.products_head_keywords_tag like '%" . tep_db_input($keyword) . "%'"; $where_str .= ')'; break; } } $where_str .= " )"; } Mais les caratères accentués ne sont toujours pas pris en compte, exp : légèrement = pas de résultat -------------------- Oscommerce : 2.2 MS2 | AdminMS2fr V2.3 | BoxImageThemaMS2fr V2.7 | Definemainpage v1.3.3 | MenubarV1 | WYSIWYG HTMLArea v1.7 FR | Sendorderhtmlemail v54 | Header Tags Controller v2.3.2 | Ultimate SEO URLs 2.2.2 | xsell_1_2_1 | PayPal_IPN-v2.3.3 | visibles country v1.1b | popup_image by grunt | step_by_step_orders_v1.7 | fckeditor-oscommerce_V2 | featured_products | Discount Coupon Codes 3.3. | Account Balance (gift certificate redemption) | N° facture séquentiel par Blanche Neige.
Projet en cours de finition : Oscommerce : 2.3.3 FR | Ultimate_Seo_Urls_5_PRO_r205 | X_Sell_For_2.3.1_v3.0 | ipuv205A_for_osc231 | Instructions utf8 latin1 (Règle une bonne fois pour toute les problème d'accent) | AJAX attribute manager for 2.3.1 v2 mise à jour v2.8.10 | Category Description for OSCommerce 2.3.1 v1.08 | Product Attributes Sort Order v1.83a | Easy Populate v2.8-231 for osCommerce v2.3.1 | Quick_updates v2.9.2 | Theme Switcher v1.4.2 (retiré) | Fancier Invoice & Packing Slip for OSC 2.3.1 + Adaptation - Numéro de facture séquenciel par Blanche Neige | Dynamic Template System v2 | Order editor for2.3 v1.3 | Product Tabs V1.1 | KissIT - image Thumbnailer v1.0.0 | Option Types v2.3.1 |
|
|
13 May 2011, 22:51
Message
#4
|
|
![]() 5eme dan OSC Groupe : Administrateur Messages : 9130 Inscrit : 4-March 03 Lieu : Auray Membre no 927 |
Mais les caratères accentués ne sont toujours pas pris en compte, exp : légèrement = pas de résultat Le problème des accents est peut-être du à la manière dont ils sont codés dans les textes en bdd. Si tu as mis un wysiwyg genre ckEditor, il se peut que les entité html remplacent tous tes accents (légèrement = lég&eagrave;rement) donc ton moteur de recherche ne risque pas de trouver le mot. Tu peux configurer ton éditeur wysiwyg pour qu'il ne fasse pas ce remplacement des accentués. Si ta page de code est bien réglée (iso8859-1 ou utf8) les accents sont reconnus par tous les navigateurs maintenant. Le codage html n'a donc plus de raison d'être. Il faudra alors peut-être faire la modif dans toute les tables *_description pour mettre à jour les contenus... Bon courage. -------------------- Tout d'abord :
- Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloperLe gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
|
16 May 2011, 16:54
Message
#5
|
|
|
Ceinture jaune OSC Groupe : Membres Messages : 41 Inscrit : 30-January 07 Membre no 14996 |
petite précision supplémentaire concernant les apostrophes : tu as mis la condition dans ton switch, il faudrait plutot la placer après (dans le cas où tu entrerais dans le cas default).
et pour compléter l'exemple de gnidhal, récupère ce qui est envoyé et affiche le avec un htmlentities pour voir si tes accents sont encodés ou non. Ce message a été modifié par neji - 16 May 2011, 16:55. |
|
|
17 May 2011, 19:36
Message
#6
|
|
|
Ceinture orange+ OSC Groupe : Membres Messages : 474 Inscrit : 16-May 02 Lieu : Oise Normande pays de bray Membre no 183 |
Bonsoir neji et Gnidhal,
Purée, je me demande encore comment je suis passé devant sans rien voir... Je dois avoir le cerveau monté à l'enver parfois. Bon effectivement les é et è se transforme en caractères html car écrit dans fkeditor... C'est pas possible, je me donnerai des baffes..... Peut-être un truc du style : Code UPDATE `nom_de_la_table` SET `champ_lambda` = REPLACE (`champ_lambda` ,'è','é') J'essaye en local... Merci et bonne soirée à vous deux Alain -------------------- Oscommerce : 2.2 MS2 | AdminMS2fr V2.3 | BoxImageThemaMS2fr V2.7 | Definemainpage v1.3.3 | MenubarV1 | WYSIWYG HTMLArea v1.7 FR | Sendorderhtmlemail v54 | Header Tags Controller v2.3.2 | Ultimate SEO URLs 2.2.2 | xsell_1_2_1 | PayPal_IPN-v2.3.3 | visibles country v1.1b | popup_image by grunt | step_by_step_orders_v1.7 | fckeditor-oscommerce_V2 | featured_products | Discount Coupon Codes 3.3. | Account Balance (gift certificate redemption) | N° facture séquentiel par Blanche Neige.
Projet en cours de finition : Oscommerce : 2.3.3 FR | Ultimate_Seo_Urls_5_PRO_r205 | X_Sell_For_2.3.1_v3.0 | ipuv205A_for_osc231 | Instructions utf8 latin1 (Règle une bonne fois pour toute les problème d'accent) | AJAX attribute manager for 2.3.1 v2 mise à jour v2.8.10 | Category Description for OSCommerce 2.3.1 v1.08 | Product Attributes Sort Order v1.83a | Easy Populate v2.8-231 for osCommerce v2.3.1 | Quick_updates v2.9.2 | Theme Switcher v1.4.2 (retiré) | Fancier Invoice & Packing Slip for OSC 2.3.1 + Adaptation - Numéro de facture séquenciel par Blanche Neige | Dynamic Template System v2 | Order editor for2.3 v1.3 | Product Tabs V1.1 | KissIT - image Thumbnailer v1.0.0 | Option Types v2.3.1 |
|
|
15 Jun 2011, 11:10
Message
#7
|
|
|
Ceinture orange+ OSC Groupe : Membres Messages : 474 Inscrit : 16-May 02 Lieu : Oise Normande pays de bray Membre no 183 |
Bonjour à tous,
Comme me l'à fait remarquer Gnidhal, effectivement c'était bien le code généré par fkeditor... Donc encore merci Gnidhal car je passais vraiment à coté d'un truc aussi bête. Donc voici une petite requête pour avoir un moteur de compète, si elle n'est pas écrite dans les règles de l'arts, elle est néanmoins efficace... Et perfectible... Code UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'é','é'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'è','è'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ê','ê'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ë','ë'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'à','à'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'â','â'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ä','ä'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'î','î'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ï','ï'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ö','ö'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ô','ô'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ù','ù'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'û','û'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ü','ü'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ÿ','ÿ'); UPDATE `products_description` SET `products_description` = REPLACE (`products_description` ,'ç','ç') Alain Ce message a été modifié par AL1 - 15 Jun 2011, 11:11. -------------------- Oscommerce : 2.2 MS2 | AdminMS2fr V2.3 | BoxImageThemaMS2fr V2.7 | Definemainpage v1.3.3 | MenubarV1 | WYSIWYG HTMLArea v1.7 FR | Sendorderhtmlemail v54 | Header Tags Controller v2.3.2 | Ultimate SEO URLs 2.2.2 | xsell_1_2_1 | PayPal_IPN-v2.3.3 | visibles country v1.1b | popup_image by grunt | step_by_step_orders_v1.7 | fckeditor-oscommerce_V2 | featured_products | Discount Coupon Codes 3.3. | Account Balance (gift certificate redemption) | N° facture séquentiel par Blanche Neige.
Projet en cours de finition : Oscommerce : 2.3.3 FR | Ultimate_Seo_Urls_5_PRO_r205 | X_Sell_For_2.3.1_v3.0 | ipuv205A_for_osc231 | Instructions utf8 latin1 (Règle une bonne fois pour toute les problème d'accent) | AJAX attribute manager for 2.3.1 v2 mise à jour v2.8.10 | Category Description for OSCommerce 2.3.1 v1.08 | Product Attributes Sort Order v1.83a | Easy Populate v2.8-231 for osCommerce v2.3.1 | Quick_updates v2.9.2 | Theme Switcher v1.4.2 (retiré) | Fancier Invoice & Packing Slip for OSC 2.3.1 + Adaptation - Numéro de facture séquenciel par Blanche Neige | Dynamic Template System v2 | Order editor for2.3 v1.3 | Product Tabs V1.1 | KissIT - image Thumbnailer v1.0.0 | Option Types v2.3.1 |
|
|
16 Jun 2011, 10:31
Message
#8
|
|
![]() 5eme dan OSC Groupe : Administrateur Messages : 9130 Inscrit : 4-March 03 Lieu : Auray Membre no 927 |
Oui, perso j'aurais fait autrement :
récupération du contenu de la table products_description via phpmyadmin (fichier sql) passage dans un éditeur de texte et remplacement des entités html ciblée par un recherche et remplace (histoire de ne rien oublier) Enfin mise à jour de la table via phpmyadmin à partir du fichier sql corrigé. Le travail en direct sur la base est toujours risqué (erreur de syntaxe...) et la multiplication des requêtes n'est pas forcément une solution exhaustive. Dans ton cas tu as listé les caractères ä, ö, ÿ qui ne sont pas utilisés en français mais peut-être oublié le oe qu'il vaut mieux laisser en 2 lettres à la place d'un œ car les recherches faites à partir d'un clavier français ne permettent pas d'écrire facilement les ligatures (qui connait le code par cœur du œ ?) -------------------- Tout d'abord :
- Ni Hotline ni Service Après Vente, ces forums sont un lieu d'échange. BIEN POSER SA QUESTION (généralités)Les "Informations Importantes" que vous devez ABSOLUMENT avoir lues : Règlement, Bien poser sa question dans ces forums et Bien utiliser les Forums. Les raccourcis pour gagner du temps : la FAQ, les PDF de la Doc (MS2-fr): PDF-V1 et PDF-V2, le moteur de Recherche sur les forums , la Liste des Contributions de Corbin. ----------------------------- Quelques sites de référence --------------------------- PHP: Le site du Zéro et PHP Débutant avec la DOC en français -- HTML: Self HTML - WebProgrammation -- CSS: OpenWeb - AlsaCréations - CSS/Edge -- Autres ressources: - XajaX - highslide js Les bons outils : EasyPHP - WAMP-5 - - Notepad++ - Firefox et son extension WebDeveloperLe gène idéal c'est le gène original. Le génie des halles est un Génie des Alpages qui tente d'être à la page. (Merci f'murrr pour les cours de philosophie de chien) |
|
|
![]() ![]() |
|
Version bas débit | Nous sommes le : 19th June 2013 - 00:26 |
| Ce site est déclaré auprès de la commision Nationale de l'Informatique et des Libertés (déclaration n°: 1043896) |