IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques & Frameworks Discussion :

Probleme pour afficher le code html apres insertion dans bdd


Sujet :

Bibliothèques & Frameworks

  1. #1
    Nouveau membre du Club Avatar de Pepito2030
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 36
    Points
    36
    Par défaut Probleme pour afficher le code html apres insertion dans bdd
    Salut à tous !

    Je viens d'installer FCKeditor en local, et je le trouve excellent comme éditeur !

    Aussi, j'aurais quelques questions à vous poser à son sujet...

    Lorsque je soumet le formulaire (page PHP), et avant d'envoyer la valeur postée dans la bdd, je fais un "mysql_real_escape_string" histoire de ne pas avoir de mauvaise surprise. Ensuite, pour afficher le contenu enregistré dans la bdd sur une page en PHP toute simple, je fais un "htmlentities" pour ne pas interpreter le html dans la page... (car quelqu'un pourrait poster un code javascript malveillant ou autre...). Mais le probleme est que le "htmlentities" empeche l'interpretation normale du code html !!!

    Sur la page, je vais avoir :

    <p><br /><br /> <font color="#000000"><u><strong>Hello world !</strong></u></font> </p>

    au lieu d'un hello world tout en noir et en gras. Vous voyez ce que je veux dire ?

    Je découvre ce logiciel et je ne le connais pas encore très bien...

    Savez vous comment faire pour interpreter certaines balises html et pas d'autres ? ou plutot comment interdire certaines balises html ?

    Merci !

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 338
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 338
    Points : 15 684
    Points
    15 684
    Par défaut
    justement le code dans le champ est de l'html donc tu ne dois pas utiliser la fonction "htmlentities"
    je pense que tu vas me dire "mais alors les utilisateurs peuvent mettre n'importe quel code même du javascript qui va modifier ma page" et je te répondrais "et oui !"

  3. #3
    Membre actif
    Avatar de dam_moreyllo
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    251
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 251
    Points : 227
    Points
    227
    Par défaut
    Bonjour !
    justement le code dans le champ est de l'html donc tu ne dois pas utiliser la fonction "htmlentities"
    je pense que tu vas me dire "mais alors les utilisateurs peuvent mettre n'importe quel code même du javascript qui va modifier ma page" et je te répondrais "et oui !"
    Moi je lui répondrais "si si il y a un moyen d'empêcher l'utilisateur de mettre du code javascript !"

    Tu peux, dans ton PHP, avec une expression régulière, enlever tout ce qui se trouve entre "<script" (sans le > évidemment) et "</script>".

    A priori ceci a l'air de marcher, mais j'ai pas trop testé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $html = preg_replace("/<script[\s\S]*?<\/script>/", "", $html);
    Ou sinon il faut voir avec l'option de configuration dans fckconfig.js :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FCKConfig.ProtectedSource.Add( /<script[\s\S]*?<\/script>/gi ) ;
    Mais j'ai pas bien compris si c'est vraiment à ça que ça sert ou pas et ce que ça fait exactement...
    Si tu arrive à faire ce que tu veux avec cette option, tu pourra m'expliquer ?

    Voila, j'espère t'avoir aidé !

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 338
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 338
    Points : 15 684
    Points
    15 684
    Par défaut
    pour l'utilisation de "ProtectedSource" il vaut mieux l'oublier parce que pour mettre un code html libre il suffit de désactiver le javascript donc la protection de FCKEditor ne sert plus

    par contre c'est vrai qu'on peut s'en sortir avec un filtrage des balises "script" en PHP mais il faut aussi penser à gérer les majsucules/minuscules
    et ensuite il y a le code dans les "onmouseover" ou autre qui peuvent exécuter n'importe quel code javascript

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 12
    Points
    12
    Par défaut fckeditor !
    Moi j'ai installé FCKeditor dans des pages php en lien avec une base de données et rien ne va : avec IE oui c'est à peut près OK mais avec Firefox l'éditeur affiche par intermitence les données du formulaire ...j'ai regardé le code source de la page pour comprendre pourquoi elle s'ffiche si mal et je me demande ce que c'est que la variable $html et pourquoi il y a des "hidden" et des"iframe".

    Excuser mais je suis débutante ....et ne comprend pas bien l'anglais : je suis allée sur le wiki mais je cherche des réponses à mes questions : y at'il en ligne des infos plus précises ?

    Pour l'installation j'ai suivi pas à pas les instructions du WIKI.
    Je m'embrouille un peu pour indiquer le chemin des fichiers dans les 2 fichiers congif.php ...
    J'ai dans "www" sur le serveur distant un répertoire "gite" et dedans un répertoire "FCKeditor"
    dans lequel se trouve donc tous le sfichiers FCKeditor" comment noter le chemin ?

    brezf je m'embrouille et je me demande donc un peu désespérée s'il existe un autre éditeur de texte+ images plus simples avec moins de javascript ?

    Par exemple comment marche l'éditeur de ce forum ?

    merci

    moque

  6. #6
    Nouveau membre du Club Avatar de Pepito2030
    Inscrit en
    Juillet 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 43
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par moque
    Moi j'ai installé FCKeditor dans des pages php en lien avec une base de données et rien ne va : avec IE oui c'est à peut près OK mais avec Firefox l'éditeur affiche par intermitence les données du formulaire ...j'ai regardé le code source de la page pour comprendre pourquoi elle s'ffiche si mal et je me demande ce que c'est que la variable $html et pourquoi il y a des "hidden" et des"iframe".

    Excuser mais je suis débutante ....et ne comprend pas bien l'anglais : je suis allée sur le wiki mais je cherche des réponses à mes questions : y at'il en ligne des infos plus précises ?

    Pour l'installation j'ai suivi pas à pas les instructions du WIKI.
    Je m'embrouille un peu pour indiquer le chemin des fichiers dans les 2 fichiers congif.php ...
    J'ai dans "www" sur le serveur distant un répertoire "gite" et dedans un répertoire "FCKeditor"
    dans lequel se trouve donc tous le sfichiers FCKeditor" comment noter le chemin ?

    brezf je m'embrouille et je me demande donc un peu désespérée s'il existe un autre éditeur de texte+ images plus simples avec moins de javascript ?

    Par exemple comment marche l'éditeur de ce forum ?

    merci

    moque
    Dans le wiki tout est expliqué, et y a pas besoin de passer des heures à comprendre !!

    Essaye d'insérer l'editeur dans une page toute simple !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?php
    include("FCKeditor/fckeditor.php") ;
    ?>
    <html>
      <head>
        <title>FCKeditor - Sample</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      </head>
      <body>
        <form action="savedata.php" method="post">
    <?php
    $oFCKeditor = new FCKeditor('FCKeditor1') ;
    $oFCKeditor->BasePath = '/FCKeditor/';
    $oFCKeditor->Value = 'Default text in editor';
    $oFCKeditor->Create() ;
    ?>
          <br>
          <input type="submit" value="Submit">
        </form>
      </body>
    </html>
    Tu places le dossier de l'editeur dans un dossier nommé "FCKeditor" juste a coté de cette page et ca devrait fonctionner.

Discussions similaires

  1. probleme pour afficher un index.html
    Par zyriuse dans le forum Ruby
    Réponses: 3
    Dernier message: 26/04/2010, 15h05
  2. Rechargement après insertion dans bdd
    Par arthuro45 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/08/2009, 19h44
  3. Réponses: 24
    Dernier message: 26/08/2009, 09h38
  4. Fenetre pour afficher un code HTML ?
    Par Jaenne dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 13/12/2008, 23h44
  5. composant builder4 pour afficher du code html
    Par BranRuz dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/09/2002, 11h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo