• Ok,

    für die die eine Community Version haben (die andere Version kann ich nicht testen da nicht gekauft [auf Geschenke freue ich mich immer]) kann man 2-3 Bugs in der Suche fixen in dem man (bitte, immer!!! backups machen!!!):

    a-)2 Tabellen erstellt:

    Code
    CREATE TABLE `commerce_seo_url_names` (  `id` int(4) NOT NULL AUTO_INCREMENT,  `file_name` varchar(64) NOT NULL,  `file_name_php` varchar(32) NOT NULL,  PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8


    und

    Code
    CREATE TABLE `commerce_seo_url_personal_links` (  `link_id` int(4) NOT NULL AUTO_INCREMENT,  `url_text` varchar(128) NOT NULL,  `file_name` varchar(64) NOT NULL,  `language_id` int(2) NOT NULL,  PRIMARY KEY (`link_id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8

    b-) in commerce_seo_url.php die Line 115 ersetzt damit die Suche nicht mehr ins leere Läuft.

    Code
    //header('Location: '.HTTP_SERVER.DIR_WS_CATALOG.'404.php?error=404');header('Location: advanced_search_result.php?n=1&keywords=');

    c-)nicht gewünschte Zeichen äüößèé etc.. ausfiltert bzw ersetzt: diese Funktion kopieren und ausrufen in advanced_search_result.php

    Code
    function clean_str($str,$empty_string){  // Sonderzeichen mit ae, ue ect.. ersetzen:    $bad = array("ä", "ü", "ö", "ß", "Ä", "Ü", "Ö",);    $good = array("ae", "ue", "oe", "ss", "AE", "UE", "OE",);    $str = str_replace($bad, $good, $str);  //Akzenten ersetzen    $str = strtr($str, 'àáâãåòóôõøèéêëçìíîïùúûÿñ', 'aaaaaoooo0eeeeciiiiuuuyn');  //Exoten ersetzen    $str = preg_replace('%[^a-z0-9]%siU',$empty_string,$str);  //Doppelte $empty_string ersetzen    $count = 1;    while($count)    $str = str_replace($empty_string.$empty_string, $empty_string, $str, $count);//Ausgabereturn $str;}

    und

    Code
    xtc_redirect(xtc_href_link('keywords/'.$_GET['keywords']));

    ersetzen mit

    Code
    xtc_redirect(xtc_href_link('keywords/'.str_replace(' ','+',clean_str($_GET['keywords']," "))));

    im selben File.

    So, ich glaube hier vielleicht ein bisschen geholfen zu haben, bitte trotzdem testen und bescheid sagen.


    Julien.
    ps: da ich seeehhhhrr sensibel bin, bitte Sachlich bleiben ;)

    3 Mal editiert, zuletzt von julien (31. März 2011 um 19:01) aus folgendem Grund: formatierung

  • Hallo Paulchen,

    in der letzte Version mit FP11.1 und SEO URLs kannst Du Fehler finden die mit den Schnipsel von oben gefixt werden.

    Suche* nach: o'brian
    (es geht um die ') dann bricht die Suche ab ->Nach dem Fix :Ergebniss zeigt Resultat für o+brian

    Suche nach: (/&(/%)
    dann bricht die auch ab->Nach dem Fix: Ergebniss wird mit "alle" Produkten ersetzt.

    Die Tabellen habe ich dazu addiert weil in manche "alte-neue" Version diese nicht mit dabei waren, also eher Profilaxe.

    Julien.

    *ich kann nur von der CE sprechen , da keine bezahlte Version gekauft.

  • hi julien,
    in v2.0.9ce treten diese fehler auch auf.

    ich habe deine genannten änderungen in der advanced_search_result.php vorgenommen und die ersetzungen funktionieren einwandfrei, so dass der fehler nicht mehr auftritt.

    besten dank!


    die änderung in der commerce_seo_url.php habe ich nicht vorgenommen (ist in v2.0.11ce eh geändert), da hierdurch eine endlosschleife entsteht.

    • Offizieller Beitrag

    Hallo Julien,
    Problem ist nur, wenn ich nach hässliche (Beispiel) suche, dann findet er es dann nicht mehr. Zu dem commerce_seo_url.php ist ein QF11.2 gerade in Arbeit, was das Problem beheben wird.

  • sorry, kommando zurück! ;)

    die ersetzung funktioniert zwar, jedoch filtert es eben auch die umlaute aus der suche, welche gewollt sind.

    in der originalversion (ohne deine änderungen) bringt die suche nach (/&(/%) einen bad request vom apachen.


    wie bereits geschrieben: gilt nur für v2.0.9ce!

  • Hallo

    admin,
    kannst Du mir einen Besipiel von hässliche Suche die zu nichts führt?
    Meinst Du etwas wie "&(%§$&=)(&" oder etwas wie "èàò" oder etwas wie "o'brian" ?

    Sonst freue ich mich natürlich auf dem nächsten FP.
    :)

    paulchen,
    freue mich wenn ich helfen konnte. Und wie immer schön auskommentieren und backups machen. Wenn FPs kommen ist es hiermit einfacher den Faden wieder zu finden...

    Julien