Question pour les pros...

okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006 - 11 mars 2005 à 18:29
okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006 - 31 mars 2005 à 10:17
bonjour Messieurs-Dames.


je vous explique mon problème.


J'ai créé un dictionnaire en ligne de japonais (http://www.dictionnaire-japonais.fr) et j'ai une base de données bien remplie.


Pour la programmation du diko, pas de problème, par contre, j'aimerais désormais ajouter un "assistant de lecture"...


je m'explique: une personne rentrerais dans un champ de texte un texte
en japonais (ou alors l'URL d'une page japonaise) et , oh miracle, une
fois le texte traité par le programme, losque l'on survol un mot
existant dans la base de données (celle du diko) un calque apparait ou
s'affiche la traduction française du mot en question... Voici un
exemple de site proposant ce service:


http://www.rikai.com/perl/Home.pl





Quelqu'un aurait-il une idée au niveau de la programmation? Parceque je
vois pas trop comment faire pour que le script php/sql vérifie si un
mot (ou une expression) rencontrée est présente dans la base ou non....






Merci d'avance pour vos suggestions!





Amicalement,


Un débutant en php.

7 réponses

cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
12 mars 2005 à 21:54
Ton code de survol est coté client, pas serveur. Donc PHP est inefficace... En revanche, lors de la génération de la page HTML, PHP peut faire en sorte que cette page soit prédisposée à recevoir un survol client via du JavaScript. PHP s'assure juste que le mot existe afin de ne pas prédisposer inutilement la page.

Avec des DIV et des évènements On* du JavaScript, on peut réaliser tes désirs. Mais pour cela, il faut aller voir:
http://www.javascriptfr.com/

NOTE: ton navigateur est-il FireFox

Ta page PERL japonaise est inaffichable si on n'a pas le displayeur adapaté.

===========
Validez les réponses si ok...

ViewVite : HTML
0
okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006
12 mars 2005 à 23:21
>Ton code de survol est coté client,
pas serveur. Donc PHP est inefficace... En revanche, lors de la
génération de la page HTML, PHP peut faire en sorte que cette page soit
prédisposée à recevoir un survol client via du JavaScript. PHP s'assure
juste que le mot existe afin de ne pas prédisposer inutilement la page.



heum. Ca je sais bien. C'est pas le javascript qui me pose problème.

Non, ce que je me demande, c'est comment faire, en PHP, pour sonder une
page et vérifier si tel ou tel mot est présent dans la base de données.
C'est ça ma question.


>Ta page PERL japonaise est inaffichable si on n'a pas le displayeur adapaté.



je crois plutôt qu'il te faut tout simplement installer les polices japonaises sur ton ordinateur.
0
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
12 mars 2005 à 23:43
400ème message CS
C'est la fête...

Pour sonder la page, il faut la lire. Or, en plaçant du PHP dans du HTML, rien n'est lisible. Php est interprété et remplacé au final par du Html. Supposons que tu appelles un script Php quand l'utilisateur survole un mot et que cela entraine une vérification dans ta base, eh bien j'espère que ton user à une connexion solide car il va ramer, et le serveur bien plus. En revanche, tu peux faire un truc du genre:
Voici ma <?php Verif('phrase'); ?> interprétée

Verif écho simplement le mot "phrase" s'il n'est pas trouvé dans la base (dans tel cas, le coté client ne réagit pas), soit Php écho le mot avec des balises JS autour de manière à ce que coté client, du script se mette en place quand il survole le mot. Le serveur ne travaille alors pas.

«Bon, et alors ? Mon problème n'est pas là». Je ne peux que te conseiller te dynamiquer certains mots, mais pas tous. Ou alors, il faut que tu ais une page contenant tous les mots un par un et Php les teste, batissant au passage une page Html complète. Ou alors, faire un Txt écrit en HTML avec une page interprétant chaque mot du fichier TXT: il faut alors un parseur de texte.

Le "mieux" est d'utiliser un logiciel qui s'intègre à ton navigateur. Exemple la Google barre est capable de faire sélectionner du texte, Babylon Translator (viscieux) traduit sur simple clic... mais là, on quitte de loin le Php.

C'est tout ce que je peux dire... Conclusion: ne pas vouloir traduire tous les mots.

===========
Validez les réponses si ok...

ViewVite : HTML
0
okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006
13 mars 2005 à 11:10
je dois avoir du mal à me faire comprendre!



nous sommes bien d'accord qu'au final j'aurais une page html avec du javascript.

donc, le php va vérifier chaque mot d'une page ou d'un texte, vérifier
si un mot est présent dans la base et si oui créer une fonction
javascript. Voilà ce que ça donnerait:

dans le head, les script pour chaque mot ayant été trouvés:

<script>cardOut(0,['春',['シュン; はる; あずま
かす; すの; ひ
わら','springtime; spring (season); '],['']]);
cardOut(1,['運勢',['うんせい',' luck'],['運','ウン; はこ+ぶ &nbsp; carry
luck; destiny; fate
lot; transport; progress
advance; ','勢','セイ; ゼイ; いきお+い
はずみ; せ &nbsp; forces
energy; military strength; ']]);
cardOut(2,['占おう',['うらなう',' to forecast; to predict'],['占','セン; し+める; うらな+う
うら; しむ; じめ &nbsp
fortune telling; divine; forecast
occupy; hold; have
get; take; ']]);


etc....
et dans le body:

onMouseOut="T8R(this)">円</span><span class=T7R onMouseOver="T7R(81,this)"

ça ça ne pose pas de problème à généré.
La seule et unique chose que je cherche à comprendre, c'est comment identifier dans un texte que tel ou tel mot est présent dans la base!

Par exemple, si on avit une phrase du type:
"salut à tous! comment allez-vous"
il faudrait que le script vérifie si "salut" est intégré à la base, si "à" est référencé...etc...
en français ça pourrais aller, car il y a les espaces et je pourrais facilement créer un tableau.
Le problème c'est qu'en japonais, toute est collé. C'est comme si il fallait agir sur une phrase de ce style:
"salutàtous!commentallez-vous"
Et là, je coince!


C'est ça mon problème, comment distinguer les mot dans ce type de chaîne?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 mars 2005 à 12:37
Hello,



il n'y a pas de raison que tu coinces :-)

Toutes les fonctions gerant les chaines de caracteres se fichent pas
mal qu'il y ait des espaces ou non. Ca ne represente rien de plus qu'un
autre caractere, un espace, pour PHP.

Bref...je ne sais pas comment tu vas gerer la chose, mais vu comment tu
expliques...tu stockes les traductions en francais, et tu stockes
forcement les traudctions en japonais aussi, non ? Et la, meme si dans
les phrases, les mots sont colles, dans ta base tu as juste une
equivalence entre le mot francais, et comment il s'ecrit en japonais.

Quand un utilisateur va vouloir selectionner un mot en japonais, tu vas
parcourir ta base pour trouver le...les mots. Pour que cela fonctionne
correctement, il va te falloir utiliser les FULL-TEXT de MySql.

http://dev.mysql.com/doc/mysql/en/fulltext-search.html
0
okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006
15 mars 2005 à 13:32
J'ai beau lire les différents tutaux sur le net, je n'arrive pas du tout à cerner le but du FULL-TEXT...



Bon, on va prendre un exemple très simple:

Un utilisateur rentre le texte "bonjour à tous! il fait beau."

Disons que l'on veuille obtenir la traduction mot-à-mot en anglais du
texte saisie. Comment feriez-vous? en quoi le FULL-TEXT va m'aider à
résoudre mon problème?

(on a une table avec motfrancais/motanglais)
0
okaneganai Messages postés 47 Date d'inscription mercredi 10 novembre 2004 Statut Membre Dernière intervention 23 mai 2006
31 mars 2005 à 10:17
J'ai enfin saisie le but de FULL-TEXT :)

c'est très pratique, mais ça ne me sert à rien dans ce que je veux faire...
0
Rejoignez-nous