Commit 1964bc11 authored by Clement GAUDUCHEAU's avatar Clement GAUDUCHEAU
Browse files

tri des dossiers

parent 8dcd9e10
<!--<html lan="fr">
<head>
<meta charset="utf-8"/>
<title>Levenstein</title>
</head>
<body>
<form method="POST" action="levenshtein.php">
<p>
<label for="login">quel mot cherchez vous ?</label>
<input type="text" id="login" name="motCher"/>
</p>
<p>
<input type="submit" value="Envoyer" />
</p>
<p>
<input type="reset" value="annuler" />
</p>
</body>
</html>
-->
<?php
/*
if(isset($_POST["motCher"])){// mot mal orthographié
$input = $_POST["motCher"];
// tableau de mots à vérifier
$words = array('apple','pineapple','banana','orange',
'radish','carrot','pea','bean','potato','bananas',);
$filename = "dico-en_10.txt";
$handle = fopen($filename,"r");
$content = fread($handle, filesize($filename));
fclose($handle);
$split = explode("\n",$content);
// aucune distance de trouvée pour le moment
$shortest = -1;
// boucle sur les mots pour trouver le plus près
foreach ($split as $word) {
// calcule la distance avec le mot mis en entrée,
// et le mot courant
$lev = levenshtein($input, $word);
// cherche une correspondance exacte
if ($lev == 0) {
// le mot le plus près est celui-ci (correspondance exacte)
$closest = $word;
$shortest = 0;
// on sort de la boucle ; nous avons trouvé une correspondance exacte
break;
}
// Si la distance est plus petite que la prochaine distance trouvée
// OU, si le prochain mot le plus près n'a pas encore été trouvé
if ($lev <= $shortest || $shortest < 0) {
// définition du mot le plus près ainsi que la distance
$closest = $word;
$shortest = $lev;
}
}
echo "Mot entré : $input";
if ($shortest == 0) {
echo "Correspondance exacte trouvée : $closest\n";
}
else {
if($closest!=""){
echo "</br>"."Voulez-vous dire : $closest ?\n";
}
}
}
else {
echo "Vous navez pas entré de mot !";
}
*/
?>
<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="../data/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;
}
?>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment