Aktív témák

  • Briganti

    tag

    na megint jovok a search-l :) a helyzet az, hogy ez jo s szep, ha mindenhova csak 1 szavat irunk, vagy egymasutan kovetkezo szavakat ... de tokeletesiteni szeretnem es olyasmit is keresni hogy ''legkozelebb allo talalat'' ... tehat ha a szoveg ugyvan hogy ''Ez a szoveg amiben keresek'', es a input-ba azt irom be hogy: ''szoveg keresek'' akor talalja meg ... en ezt ugy oldottam meg hogy lebontottam szavakra mindegyiket (amit keresek), a qoutation, author, dictionary, es attribution, es ha mindegyikhez beirok 3 3 szavak akkor az: 9 * 9 * 9 * 9 = 6561 variacio :) (itt lehet hogy nemjol szamoltam, mert gyanusan nagy szam ... ), en ezt 4 egyberakott for-l oldottam meg s nekem igy csak 81 variaciot futtat vegig ...

    igy nez ki nekem:

    $sel_num=0;
    //search in database
    for ($q=0;$q<$j;$q++) {
    for ($w=0;$w<$k;$w++) {
    for ($e=0;$e<$l;$e++) {
    for ($r=0;$r<$m;$r++) {
    echo ''j[$q]:k[$w]:l[$e]:m[$r]<br>'';
    $sel[$sel_num] = mysql_query(''SELECT * FROM quote_author, quote_dictionary, quote_dictionary_quotation, quote_quotation
    WHERE quote_quotation.author_id = quote_author.author_id
    AND quote_quotation.quotation_id = quote_dictionary_quotation.quotation_id
    AND quote_quotation.quotation LIKE '%$quotation_j[$q]%'
    AND quote_author.author_name LIKE '%$author_j[$w]%'
    AND quote_quotation.attribution LIKE '%$attribution_j[$e]%'
    AND quote_dictionary.dictionary_name LIKE '%$dictionary_j[$r]%''');
    if ($query=mysql_num_rows($sel[$sel_num])) {
    echo ''Rows found: $query, sel: $sel_num<br>'';

    }
    $sel_num++;
    }
    }
    }
    }

    $j = $k = $l= $m = szavak szama amit be irtam a keresobe (quotation, author, attribution, dictionary)


    azthiszem itt szavankent minden variaciot kiprobal, de ha pl. quotation: ''szoveg keresek ez'' , es authornak beirom hogy: ''en briganti csongor'', akkor nem keres pl ugy hogy a ''szoveg keres'' es a ''briganti'', tehat nem csoportositsa kettesesevel, es igytovabb ... vagy egyaltalan szukseg van erre hogy fel tudjak epiteni egy olyan ranglistat hogy ''legkozelebb allo bejegyzesek''? az igazsag az hogy mar bele gabalyodtam ebbe a sok logikaba, s variaciokba ... esetleg ha erre van valami konnyebb megoldas annak is nagyon orvendenek ...


    koszi!

Aktív témák