Eli olen yrittänyt yksinkertaista bottia joka oppii uusia sanoja kun sille "puhuu".
<form method="post"> <input name="txt" size="40"> <input type="submit" value="Sano"> </form> <?php //jos tekstiä on. if (isset($_POST['txt'])){ //siivotaan teksti $txt = $_POST['txt']; $txt = trim($txt); $txt = stripslashes($txt); //kertään eri sanat $sanat = explode(" ", $txt); //luetaan tiedetyt sanat $tietosana = file("teksti.txt"); for ($i = 0; $i < count($sanat); $i++) { //tarkistaa onko sana jo tiedossa. if (!in_array($sanat[$i],$tietosana)) { echo "sana " . $sanat[$i] . " on uusi! "; } } } ?>
Ongelma on (ehkä) kohdassa "if (!in_array($sanat[$i],$tietosana))", sillä aina kun kirjoitan sanan joka on teksti.txt:ssä, se sanoo "sana x on uusi"
Niin eli olisi tarkoitus miten se sanois "sana x on uusi" vain silloin kun sana on oikeasti uusi, vinkkejä ?
teksti.txt:n sisältö on:
nakki munkki makkara
File()llä ladattuun taulukkoon tulee rivinvaihdot mukaan joka alkioon. Trim() ottaa ne pois.
Aihe on jo aika vanha, joten et voi enää vastata siihen.