elgringorrible
Messages postés11Date d'inscriptionmercredi 16 novembre 2005StatutMembreDernière intervention 7 novembre 2010
-
1 nov. 2010 à 08:23
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 2013
-
1 nov. 2010 à 13:57
Bonjour à tous,
voilà je bute sur un problème d'affichage dans Flash CS4. Je récupère un texte dans une base de données, par exemple:
salut
tout le monde
C'est du texte brut. Je souhaite qu'il s'affiche exactement comme cela dans Flash, mais quoi que je fasse (rendu du texte en tant qu'HTML ou non) il considère toujours le
comme un saut de ligne et affiche donc ceci :
salut
tout le monde
Le problème, c'est que quand j'enregistre les modifications dans la base de données, le
a disparu de l'affichage, et le texte suivant va remplacer l'ancien:
saluttout le monde
Et là je sèche. La case "rendre le texte en tant qu'HTML" des propriétés du texte, cochée ou décochée, ne change absolument rien, les balises HTML n'apparaissent jamais. Ainsi je ne peux pas non plus mettre du texte en couleurs. A la place de :
salut
... il rend toujours le texte comme du HTML, et affiche
salut
Du coup, même chose, quand j'enregistre le texte dans la base, tout le formattage HTML a disparu, et je me retrouve avec un "salut" noir, tout bête.
Merci à celui qui trouve comment afficher du texte brut dans Flash...
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 1 nov. 2010 à 12:42
Alors il suffit de mettre TexteField.text au lieu de TextField.htmlText et le tour est joué.
Ensuite il serait intéressant de savoir si ton code est en AS2 ou AS3 aussi ...
elgringorrible
Messages postés11Date d'inscriptionmercredi 16 novembre 2005StatutMembreDernière intervention 7 novembre 2010 1 nov. 2010 à 11:44
1) Le texte récupéré depuis la BDD s'affiche dans Flash dans une boîte de type input text (pour pouvoir être modifié)
2) J'envoie ensuite le texte vers PHP à travers la variable de champ texte (style "myText") en POST
3) PHP récupère le texte en POST_["myText"] et le stocke dans la BDD.
Tout fonctionne bien, j'envoie, et je reçois. Le texte est récupéré, envoyé et stocké dans la BDD de la façon souhaitée, et récupéré sous forme HTML (avec balises et mise en forme) par le script PHP, avec les
et tout. Mon seul problème est que Flash n'affiche pas le texte qui revient sous sa forme brute, avec les balises HTML, mais le rend automatiquement, fait un saut de ligne au lieu d'écrire "
", de sorte que les balises et la mise en forme disparaissent...
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 1 nov. 2010 à 12:02
Il te faut donc savoir qu'un texte de type "input" n'est plus formaté en HTML.
Ce que tu dois faire avant d'envoyer est de remplacer les retours chariot (souvent "/r/n" sur pc) par un "
".
Peg'
Vous n’avez pas trouvé la réponse que vous recherchez ?
elgringorrible
Messages postés11Date d'inscriptionmercredi 16 novembre 2005StatutMembreDernière intervention 7 novembre 2010 1 nov. 2010 à 12:38
Nope.
- Le Input renvoie bel et bien un texte du type "salut
tout le monde".
- Le PHP récupère "salut
tout le monde".
- mySQL enregistre "salut
tout le monde", chose que je peux vérifier grâce à PHPmyAdmin.
- Lors de la lecture, PHP récupère "salut
tout le monde".
- Il l'envoie à Flash qui, lui, n'affiche JAMAIS "salut
tout le monde". Flash (que ce soit dans un input text ou bien un dynamic text) le convertit toujours, et affiche
salut
tout le monde
donc les
et autres balises HTML disparaissent.
Encore une fois, mon problème n'est pas d'envoyer les variables vers PHP, ça, ça marche; ni de les récupérer et de les transmettre vers Flash, ça, ça marche.
Au lieu d'écrire "
" dans l'input, je viens d'essayer d'écrire "/r/n". Là, Flash l'écrit tel quel, comme n'importe quels autres caractères. Mais du coup c'est le problème inverse qui se pose : vu qu'il ne considère pas ça comme un retour à la ligne, il ne fait JAMAIS de retour à la ligne et écrit toujours "/r/n".
La SEULE chose que je voudrais faire, c'est forcer Flash à écrire "
" en toutes lettres au lieu de revenir à la ligne, c'est tout. De pouvoir choisir entre "Affichage brut" ou "affichage rendu HTML". Il y a bien une option dans les blocs de textes, mais elle ne fait rien!
Merci...
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 1 nov. 2010 à 13:57
de mémoire (ça remonte à loin) il y a une propriété de TextField.html:Boolean qui existait en AS2, mais je ne sais pas si elle est par défaut à true ...