test.php 1.37 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<html lang="fr">
    <head>
        <meta charset="utf-8"/>
        <title>Test</title>
    </head>
    <body>
        <form method="POST" action="test.php">
            <p>
                <label for="login">quel mot cherchez vous ?</label>
                <input type="text" id="login" name="recherche"/>
            </p>
            <p>
                <input type="submit" value="Envoyer" />
            </p>

            <p>
                <input type="reset" value="Annuler" />
            </p>
        </form>
    </body>
</html>

<?php
    $fichier="dico-en_10.txt";
    $handle=fopen($fichier,"r");
    $content=fread($handle,filesize($fichier));
    $split=explode("\n",$content);


    $distancemin=PHP_INT_MAX;
    $motsPossibles="";

    if(isset($_POST['recherche'])){
        $input=$_POST['recherche'];
        foreach ($split as $motCourant){
            //on calcul la distance entre l'input et le mot courant
            $lev=levenshtein($input, $motCourant);

            if($lev==$distancemin){
                $motsPossibles=$motsPossibles.$motCourant."\n";
            }
            else{
                if($lev<$distancemin){
                    $motsPossibles="";
                    $motsPossibles=$motsPossibles.$motCourant."\n";
                    $distancemin=$lev;
                }
            }
        }

        echo "Vouliez-vous dire : ".$motsPossibles;
    }

?>