Dictionnaire online

Fermé
Destroy2 - 9 avril 2009 à 21:10
chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 - 11 avril 2009 à 14:57
Bonjour,

Je voudrais créer un dictionnaire pour un site web.
J'ai des connaissances en PHP, MYSQL et javascript.

Je voudrais que lorsqu'un mot est entré, qu'il soit comparé à une base de donnée et que s'il existe tel quel, il soit remplacé par un équivalent.

Donc je ne veux pas d'un traducteur poussée de forme synthaxique etc ..

Exemple:
Traducteur français=>anglais

On possède dans notre BDD: " manteau = coat "

On frappe via le site: Je prends mon manteau
Et il nous retourne: Je prends mon coat


Donc je ne veux pas qu'il soit capable comme systran de comprendre le sens exacte de la synthaxe et du sens masi qu'il remplace ce qu'il reconnait par ce qu'il connait.

Comment faire celà ??

Merci
A voir également:

4 réponses

chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 28
9 avril 2009 à 21:16
Tu fais une table avec 3 champs , id / fr / en , tu fais une recherche sur ta base grâce a uen recherche sql ( select * from table Where fr = manteau). Ensuite tu récupère les valeurs qui sont retourné et tu fais une phrase du genre : echo "$row[1] a pour traduction $row[2]";
Si tu as des connaissances en PHP / MYSQL , tu auras compris : )
0
oui je vois bien ^^

Mais comment faire alors pour que si je crée un algorithme pour automatiser la chose, il sépare chaque mot pour les rechercher un à un ?

Exemple:

Je prend mon manteau => "je" "prends" "mon" "manteau"
0
chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 28
10 avril 2009 à 22:42
Tu compte les mots et tu fais une boucle for .Je te linkerais un exemple de moteur de recherche qui prend ne compte plusieur mots si tu le souhaite.
0
tu pourrais me donner un exemple ^^
0
chupa23 Messages postés 149 Date d'inscription samedi 13 décembre 2008 Statut Membre Dernière intervention 20 juillet 2009 28
11 avril 2009 à 14:57
$phrase = 'ma phrase a traduire'; // recup de la phrase a traduire
$mot = explode(" ", $phrase); //place les mots dans un tableau
$nb=count($mot); //compte le nombre de mot
$traduction = '';//variable qui contiendra la traduction , initialisation pour pouvoir concaténer

for($i=1 ; $i<$nb; $i++)//boucle pour chaque mot
        {
         $query = "SELECT champ2 FROM table1 WHERE champ1 LIKE \"%$mot[$i]%\"";//ecriture requete
         $result = mysql_query($query); // execution requqte
         $row = mysql_fetch_row($result);//place les valeurs dans un tableau
        $traduction .= ' '.$row[0]; //concaténation de $traduction avec le champ recupéré
        }


Donc dans la table , champ1 est le champ en français et champs 2 celui en anglais. Il y aura autant de requête que de mot dans la phrase a traduire , et les mots en anglais sont placé dans $traduction, il te suffit d'afficher ensuite une phare du genre: La traduction de 'Pomme' est 'Apple'.
echo 'La traduction de '.$phrase.' est '.$traduction;
0