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 :

Afficher les données à modifier [CKEditor]


Sujet :

Bibliothèques & Frameworks

  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut Afficher les données à modifier
    Bonjour,

    Voilà, je suis actuellement entrain de réaliser une administration pour un site web, et j'ai trouver FCKEditor, très interressant pour l'utilisateur final de cette administration.
    J'enregistre le contenu de la zone de texte FCK dans une base de données, çà, tout marche niquel, par contre j'ai souci vraiment très bizarre lorsque j'affiche le formulaire pour modifier le contenu du FCK.
    Je m'explique: J'utilise FCKEditor pour créer des pages HTML, et afficher ce contenu dans une page page.php?pid=X. De ce côté là pas de problème, le contenu s'affiche bien dans page.php.

    Par contre, vous allez rire : dans mon admin, pret à modifier le contenu des pages, certaine affichent bien la zone FCK avec le contenu et d'autres.. n'affichent même pas la zone FCK.

    Jugez vous même :


    Voilà une page où le FCK ne s'affiche pas ^^



    et là, ça s'affiche bien.

    Pour info, voilà un exemple de code HTML que j'enregistre dans FCKEditor en mode "Source"

    Code HTML : 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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <table width="550" border="0" cellspacing="0" cellpadding="0" class="depannage">
      <tbody>
        <tr>
          <td width="41"><img src="http://localhost/new/image/formation/folder.jpg" width="125" height="300" /></td>
          <td width="509"><table width="414" height="21" border="0" cellpadding="0" cellspacing="0">
              <tbody>
                <tr>
                  <td><p class="gros">&nbsp;</p>
                    <p class="gros">FORMATION &quot;PRO&quot;</p>
                    <p align="right">
                    <a href="dif.html" target="wclose" onClick="window.open('popup.htm','wclose','width=500,height=474,toolbar=no,status=no,left=20,top=30')"><span class="leaseoranger"><img src="http://localhost/new/image/formation/loupe.jpg" width="20" height="20" align="absmiddle" />&nbsp;Une formation, financ&eacute;e par votre employeur ?! </span></a>                </p>
                    <p>&nbsp;</p>
                    <p>IPcube met &agrave;  dispositon des PME PMI plusieurs formateurs. Nos domaines d'intervention se d&eacute;clinent suivant trois axes :</p>
                    <p>&nbsp;</p>
                    <p>&nbsp;</p>
                    <p class="gris">- Bureautique (Word, Excel, Access, Power Point, etc.) </p>
                    <p class="gris">- Support de communication(Photoshop, Adobe Premiere, etc.) </p>
                    <p class="gris">- D&eacute;veloppement (VBA, Web) </p>
                    <p>&nbsp;</p>
                    <p>Tarifs :</p>
                    <div align="center">
                      <table width="276" border="0" cellpadding="0" cellspacing="2">
                        <tbody>
                          <tr>
                            <td width="195" class="tdk">
                                1/2 journ&eacute;e
                            </td>
                            <td width="75" class="tdk"><p align="right">170 &euro; HT </p>
                            </td>
                          </tr>
                          <tr>
                            <td class="tdk">Journ&eacute;e</td>
                            <td class="tdk"><p align="right">300 &euro; HT </p></td>
                          </tr>
                          <tr>
                            <td class="tdk">Journ&eacute;e suppl&eacute;mentaire</td>
                            <td class="tdk"><p align="right">250 &euro; HT</p></td>
                          </tr>
                        </tbody>
                    </table>
                    </div>
                      <p align="center"><span class="tdd">(formation pour 5-8 personnes d&eacute;placement compris)</span></p>
                  </td>
                </tr>
                <tr>
                  <td valign="top">&nbsp;</td>
                </tr>
              </tbody>
            </table></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td><a href="visiteur/nav/contact.php">NOUS CONTACTER</a></td>
        </tr>
        <tr>
          <td>&nbsp;</td>
          <td>&nbsp;</td>
        </tr>
      </tbody>
    </table>
    et voilà comment je récupère les données dans la BDD

    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
    <? 
    require_once('../../Connections/connexion_ipcube.php');
        mysql_select_db($database_connexion_ipcube, $connexion_ipcube);
        $query = "SELECT * FROM pages WHERE page_id ='".$_GET['id']."'";
        $res= mysql_query($query, $connexion_ipcube) or die(mysql_error());
        $row = mysql_fetch_assoc($res);
     
    print '<script type="text/javascript">';
    print 'var sBasePath = \'../fckeditor/\' ;';
    print 'var oFCKeditor = new FCKeditor(\'p_content\') ;';
    print 'oFCKeditor.BasePath = sBasePath ;';
    print 'oFCKeditor.Height = 500 ;';
    print 'oFCKeditor.ToolbarSet = \'IPcube2\' ;';
    print 'oFCKeditor.Value = '.html_entity_decode($row['page_content']).' ;';
    print 'oFCKeditor.Create() ;';
    print '</script>';
    ?>
    Si vous avez une idée d'où pourrai provenir le problème. J'pense que c'est dans le code source que j'enregistre dans la BDD mais j'ai essayé pas mal de truc mais rien n'a marché, pas moyen d'afficher ça dans FCK.

    Merchi

  2. #2
    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.
    Tu a oublié de mettre entre double-cote la chaine que tu veux affecter à oFCKeditor.value :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print 'oFCKeditor.Value = "'.html_entity_decode($row['page_content']).'" ;';

  3. #3
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Merci mais ça marche pas non plus lol.
    J'vais encore chercher

  4. #4
    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
    Tu a regardé dans la bd si tu avais bien ce que tu a entré.
    Et pourquoi tu fait html_entities_decode ? à mon avis ça sert à rien de le faire, pareil si tu fait un html_entities à l'enregistrement.

    Donne le code d'enregistrement pour voir.

  5. #5
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Dans la BDD, ya bien ce qu'il faut.
    Pour le html_entity_decode, je l'ai mis parce que sinon mon problème est présent sur toutes les pages quand je souhaite faire une modif.
    Et je ne fais pas de html entities a l'enregistrement:

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    //déclaration des variables
        $ptitle = addslashes($_POST['p_title']);
        $pcontent = addslashes($_POST['p_content']);
        $ecat = $_POST['page_cat'];
        $date = date('Y-m-d H:i:s');
        $date_maj = date('Y-m-d H:i:s');
        $module = $_POST['module'];
     
        //tests
        if(empty($ptitle) || empty($pcontent) || empty($ecat))
        { echo "Tous les champs doivent être remplis!"; }
        else{
            //on test pr savoir quelle image enregistrer dans la BDD
            switch($ecat){
                case "crea" : $ban = $url."image/imgmenu/web.jpg"; break;
                case "depannage" : $ban = $url."image/imgmenu/dep.jpg"; break;
                case "produit" : $ban = $url."image/produits/ban_produit/ban8.jpg"; break;
                case "leasecom" : $ban = $url."image/imgmenu/leasecom.jpg"; break;
                case "formation" : $ban = $url."image/imgmenu/form.jpg"; break;
                case "pack" : $ban = $url."image/imgmenu/pack.jpg"; break;
                case "cgv" : $ban = $url."image/imgmenu/cgv.jpg"; break;
                case "contact" : $ban = $url."image/imgmenu/contact.jpg"; break;
                case "copyright" : $ban = $url."image/imgmenu/copy.jpg"; break;
            }
     
            // ajout dans la base de données
            require_once('../../Connections/connexion_ipcube.php');
            mysql_select_db($database_connexion_ipcube, $connexion_ipcube);
            $query = "INSERT INTO pages
            VALUES ('','".$ecat."','".$date."','".$date_maj."','".$ptitle."','".$pcontent."','".$ban."','".$module."')";
            $res = mysql_query($query,$connexion_ipcube) or die(mysql_error());

  6. #6
    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
    Déjà utilise plutôt mysql_real_escape_string au lieu de addslashes quand c'est à destination d'une requête SQL.
    Et puis en fait, j'y pense, essai d'ajouter un addslashes quand tu affiche le code dans fck :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print 'oFCKeditor.Value = "'.addslashes($row['page_content']).'" ;';

  7. #7
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Merci encore,

    mais j'avais déjà essayé avec un addslashes, et je viens de retester avec mysql_real_escape_string mais ça n'a rien changé.
    D'après moi le problème ne viens ni de l'enregistrement dans la BDD, ni de la page d'affichage pour la modif. Le problème viens du code html que j'enregistre dans la BDD, y'a surement une balise ou un truc comme ça que FCK ne prend pas en compte (alors que l'enregistrement dans la BDD est bien ce que j'ai tapé en mode "source" quand j'ajoute une page à la BDD)

    M'enfin tout çà n'est pas clair, je comprends pas pourquoi je ne pourrais pas l'afficher dans un textarea-like alrs que çà s'affiche niquel dans le site côté visiteurs

  8. #8
    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
    Pour le mysql_real_string, je pensais bien que ça changerai rien, c'est que c'est une bonne pratique à prendre c'est tout

    Sinon, tu a essayé de créer le champs fck en php plutôt qu'en javascript ?
    Ou sinon encore, si j'ai bien compris ton formulaire d'ajout marche, essai donc de mettre en dur le code html qui marche pas dans le code du formulaire d'ajout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print 'oFCKeditor.Value = "colle ici le code html qui marche pas" ;';
    Si ça marche dans celui ci, ben t'a plus qu'a chercher les différences entre ton formulaire d'ajout et de modif pour voir ce qui ne vas pas.

    Edit : En tout cas je crois pas que ce soit le code html en lui même qui pose problème.

  9. #9
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    J'vais essayer çà, c'est vrai que j'y avais pas pensé.

    Jvais essayé aussi en integrant FCK en php, je sais plus pourquoi je l'avait integré en javascript, mais je devais surement avoir une raison. M'enfin, bon j'essai et j'te tiens au courant

  10. #10
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 8
    Points
    8
    Par défaut
    Bon eh bien, problème résolu!
    Je ne sais pas pourquoi en l'integrant en javascript ça ne marchait pas, mais en php, ça marche niquel merci beaucoup, mon projet de stage est enfin fini!! A moi la glandouille pendant une semaine!

    Et maintenant je m'souviens pourquoi je l'avais intégré en JS: parce qu'en fait mon maître de stage voulais une zone avec plusieur textarea et un seul FCK utilisable sur toutes les textareas, et comme y'avais un exemple déjà fait en JS, j'ai pas cherché plus loin

    En tout cas merci de ton aide, et bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2016] Modifier la requête pour afficher les données dans un TCD
    Par pulls dans le forum Excel
    Réponses: 1
    Dernier message: 04/04/2019, 11h39
  2. [VBA-E] afficher les données d'une datagrid dans des zones de textes
    Par fadwa dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/05/2006, 13h51
  3. [Excel] Comment afficher les données d'un fichier Excel (PHP)
    Par pierrot10 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 11/05/2006, 15h01
  4. Réponses: 6
    Dernier message: 06/04/2006, 20h52
  5. [MySQL] Une liste déroulante affichant les données d'une requête SHOW par ordre alphabétique
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 22/12/2005, 15h53

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