Afficher du texte arabe dans un textarea ou un input [Résolu]

Signaler
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005
-
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005
-
Bonjour

Je veux afficher un texte en arabe extrait d'une base de données dans
un textarea ou un input mais ce que je reçois c'est le code html des
caractères arabe genre " &#1605 &#1606 &#1578 &#1587
&#1610 &#1576 &#1609"



Commen faire pour les convertir en caractères arabe

Merci

18 réponses

Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

c t ça la solution, je vous remercie vivement
je dois maintenant reprendre le code d'une trentaine de page mais bon c pas grave l'essentiel est d'avoir trouvé la solution
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
suffit de les y mettre ?

mais si je n'ai pas compris regarder [un]escape.
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

c aps ce que j'ai voulu dire. lorsque j'extrais la chaine de
caractère de la base et que je veux afficher son contenu dans un
textarea, je reçois le code html des caratères arabe. mais lorsque
j'affiche sur la page html, l'affichage est correct.

Je n'ai pas compris le dir=rtl dans l'exemple



Sinon je vais voir le site.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
>> l'affichage est correct.
je n'ai donc pas compris ce qui ne va pas ???
rtl = pour afficher de droite à gauche ( pratique
pour l'arabe ou l'hébreu comme dit SelfHtml ).
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

oui vous avvez raison, quand on fait l'initialisation du textarea avec
le code html des caractères arabe, ça fonctionne bien. moi j'extrais
les données à partir d'une base de données et j'appelle la fonction
suivante:

out.println("<script>document.forms['form1'].elements['intitule'].value ="" + rs.getString(2) + "";</script>");



Le code est du jsp. Le résultat obtenu est un champ texte avec les codes html et non pas les caractères arabe.



Voilà, si vous pouviez m'aider, j'arrive pas m'en sortir. et merci pour vos réponses
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
alors unescape ? peut-être ?
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

j'ai testé la fonction unescape mais ça n'a pas marché
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
pas de raisons de ne pas y arriver...
peut-on avoir un extrait de la page affichée sur la
machine client ? ( click droit , et afficher la source ).
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

voilà le code qui fait défaut. et merci énormément pour votre patience:



<script>document.forms['form1'].elements['code_theme'].value = 'A01';</script>
<script>document.forms['form1'].elements['intitule'].value = unescape("&#1587;&#1588;&#1610;&#1576; &#1587;&#1610;&#1576; &#1610;&#1576;&#1604; &#1579;&#1602;&#1604; ");</script>
<script>afficheSelect(document.forms['form1'].elements['type'],'inter');</script>
<script>afficheSelect(document.forms['form1'].elements['id_filiere'],'12');</script>
<script>Remplir('12');</script>


<script>afficheSelect(document.forms['form1'].elements['id_spec'],'1');</script>
<script>document.forms['form1'].elements['exercice'].value ='2006-01-01';</script>
<script>document.forms['form1'].elements['description'].value ="";</script>
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
faut qu'on passe un peu de temps la-dessus ...
</gras>ça baigne
et par contre, frm.txt.value="&#1587;&#1588;..."; ça baigne pas ( avec [un]escape ou pas )
il y a quelque chose qui doit nous échapper !!
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

c ça. et franchement je ne sais pas s'il faut puiser dans les fonctions javascript existantes ou chercher un en écrire une.
Au début j'ai cru que le problème venait du langage jsp mais en fait c'est le javascript qui fait défaut.
Le comble c'est que je n'ai plus beaucoup de temps pour finir le projet et que au début l'histoire des caractères arabe n'était pas sur la table.

J'arrive pas à trouver la solution
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
au fait, j'y pense...
avec php ( je ne connais pas jsp ) ,
plutôt que faire :
<form name= "frm"...

<script type="text/javascript">
frm.txt.value="<?php echo $contenu; ?>";
...
on ferait :
<form name ="frm"...
"...
...
</form>
la même chose, je suppose peut-être adapté en jsp ?
répond peut-être, mais bien entendu, ça ne résoud
pas du tout le problème JavaScript.
Cordialement. Bul. ~ Site ~
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
j'ai posé la question sur le web, car j'avais un problème
équivalent à résoudre. La seule solution en JavaScript
proposée était de traiter caractère par caractère, ce qui
n'est guère réjouissant. Si on peut mettre dans le value,
c'est beaucoup mieux.
Cordialement. Bul. ~
Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

de tt façon ça reste un peu limité car on ne pourra pas par exemple affiché le même texte dans un alert. on aura le même porblème
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
là, il suffit de faire alert de ce ".value".
et si on ne veut pas faire apparaître le texte
dans la page mais uniquement dans l'alert,
mettre style="display:none;"
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

je n'ai pas compris.
j'ai écrit ce code et ça m'a donné le même affichage (&#5421; ...) dans l'alert.

out.println("<script> alert('Le code "" + request.getParameter("code_theme") + "" existe déjà.'); </script>");

ou est ce que je mets le style="display:none;"
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
je ne connais pas out.println mais :

<form name="frm"
style="display:none">

<!-- si c'est la bonne syntaxe !! -->
</form>
...
<script type="text/javascript">
alert(frm.txt.value);
</script>
...
Cordialement. Bul. ~ Site ~
Messages postés
16
Date d'inscription
jeudi 27 novembre 2003
Statut
Membre
Dernière intervention
16 novembre 2005

c du code jsp.
c très astucieux comme solution, normalement ça devrait marcher.
merci énormément