IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
oggymotslp
Člen
Avatar
oggymotslp:5.10.2016 17:14

Zdravím,

jsem tu zas. A s jiným problémem.

Mám databázi plnou otázek a odpovědí. A pak mám vstup od uživatele. Dostanu třeba "Ahoj jak se máš", ale v databázi mám jen "jak se máš". A potřeboval bych, aby to porovnalo všechny otázky v databázi, a u té otázky s největší podobností by to vypsalo odpověď z databázi.

Absolutně nevím jak na to, projíždím vše co se dá, ale nemohu nic nalézt. Předem děkuji za odpovědi.

Odpovědět
5.10.2016 17:14
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
Odpovídá na oggymotslp
Josef Kuchař - Pepa489:5.10.2016 18:26

Šel bych na to tak, že bych si načetl do proměnné všechny řádky tabulky, foreachem to projížděl prvek po prvku a pomocí funkce similar_text, si zjistit nejvyšší shodu ;)

Nahoru Odpovědět
5.10.2016 18:26
2x piš, jednou debuguj
Avatar
Odpovídá na oggymotslp
Martin Štěpánek :5.10.2016 18:50

Děláš něco na způsob Bota k chatování? :-D

Nahoru Odpovědět
5.10.2016 18:50
Všechno jde naprogramovat, chce to jen čas a chuť...
Avatar
oggymotslp
Člen
Avatar
Odpovídá na Martin Štěpánek
oggymotslp:5.10.2016 19:06

Ne, něco na způsob zeptej se a dostaneš odpověď. Bohužel nemohu napsat více podrobností ;-)

Nahoru Odpovědět
5.10.2016 19:06
Proč to dělat jednoduše, když to jde i složitě :D
Avatar
Odpovídá na oggymotslp
Josef Kuchař - Pepa489:5.10.2016 21:33

Možná něco takového(netes­továno)

//Fráze kterou hledáš
$stringToFind = "blablabla";
//Pomocné buffery
$maximum = 0;
$maximumString = "";
//Projití všemi záznami
foreach ($lines as $line) {
    //Porovnání, vrácí hodnotu v proměnné $percentage
    similar_text($line, $stringToFind, $percentage);

    //Pokud je % větší než maximum, tak je maximum procento a maximumString je tento řádek
    if($percentage > $maximum)
    {
      $maximum = $percentage;
      $maximumString = $line;
    }
}
// Vypiš nejpodobnější string
echo $maximumString;
Akceptované řešení
+20 Zkušeností
Řešení problému
Nahoru Odpovědět
5.10.2016 21:33
2x piš, jednou debuguj
Avatar
oggymotslp
Člen
Avatar
Odpovídá na Josef Kuchař - Pepa489
oggymotslp:6.10.2016 12:17

Zkusím to, díky.

Nahoru Odpovědět
6.10.2016 12:17
Proč to dělat jednoduše, když to jde i složitě :D
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.