Afficher emoticon avec tinymce

Fermé
-
 toubippc -
Bonjour,

Je develloppe actuellement un petit site php ou j incorpore l editeur tinymce.
L installation c est passer sans souci,
J arrive bien a envoyer le texte creer dans un champ mysql de type longtext.
Je recupere les variable avec un html_entities_decode(nl2br(ma_variable)), afin de prendre en compte les balise html
Donc tout s affiche bien.
Le seul souci est que quand j insere une emoticon, elle ne s affice pas !
A la place, sous firefox j ai la chaine de caractere de l emoticon,,
et sous ie j ai un carrer voulant afficher l image mais en reprennant l url je m appercois qu elle n est pas correct.

"http://192.168.1.197/..."

alors qu elle devrait etre exactement

http://192.168.1.197/...

donc : /%22 en trop, d ou vien t il ??

Quand je me refere au champ de la base de données,
voila ce que j ai a la place de l addresse de l emoticon

"<img title=\"Tongue out\" src=\"../../tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif\" border=\"0\" alt=\"Tongue out\" /> <img title=\"Cool\" src=\"../../tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif\" border=\"0\" alt=\"Cool\" /></p>"

voici le code que j utilise pour l affichage apres la recuperation de mon champ:

$texte=html_entity_decode(nl2br($info['texte']));
print ('texte') ;

j ai ratisser tout les tuto sur tinymce, mais rien trouver qui pourrait se rapporter a mon cas

P.S: Je sais que c est loin d etre securiser, je m y pencherait une fois que tout s affichera correctement

J espere avoir ete assez clair, sinon n hesiter pas
Merci de vos reaction

1 réponse

ok , donc voila, lool
ca fait 2 jour que je gratte pour sa (en devellopent le reste),
il a fallu que je poste pour savoir comment faire ..!!

En fait html_entities_decode();
"decode" le code html et l autorise
mysql ou php a apparement lui meme une "protection" car les info contenu dans mysql
contient deja des anti-slash
Donc combiner avec stripslashes();

$texte=stripslashes(html_entity_decode(nl2br($info['texte']))); // reprise du "texte" html
print ($texte);

tout le code de vient bien clair et lisible par php
le / est de la , le %22 vient surement d une traduction de l explorateur comme pour les espace (%20)

plus de probleme pour l affichage d image ou d emoticon de tinymce

Ma derniere question, c est en rapport donc je pense que je peu la poste ici !

Y a un gros trou dans la securiter d apres tout ce que j ai pu potasser !
Je ne m y connais pas bcp, et je me demande comment optenir le meme resultat en protegant un minimum.
si je rajoute les "fonctions" (excusez moi si ce n est pas le terme) tel que :
msysql_real_escape_string
ne vais je pas retrouver des incoherence dans le code html au final et ne plus etre interpreter et retrouver mon probleme d affichage ??
Y a t il moyen d utiliser le tinymce en se protegeant avec un bon affichage ??
J ai lu pas mal de truc sur des bbCode serait il un meilleur moyen ?