Bonjour,
Je viens vers vous avec un problème dont je n'arrive même pas à mettre le doigt dessus.

Je suis en train de construire mon propre forum. Jusque là, ça va. Le hic se situe au niveau de mes textarea. J'ai créé une simple requête POST en formulaire pour que l'utilisateur puisse envoyer un message. Celui-ci fonctionne correctement.

Je décide donc d'installer un éditeur wysiwyg pour embellir la bestiole et là c'est le drame.
J'ai utilisé CKeditor, wysibb ainsi que TinyMCE.

L'éditeur de texte s'affiche bien. Mais j'ai beau écrire ce que je veux à l'intérieur, mon button submit ne fonctionne pas. Non seulement j'ai l'impression qu'il ne trouve pas le name de mon textarea mais il ne rafraîchit même pas la page, comme si le formulaire n'existait pas et que ce submit n'avait aucune action !

Voici le code en question avec mon dernier test (soit TinyMCE). Je précise que j'utilise le template Twig :

Ma vue :

<form method="post">
            <fieldset>
                <legend>Nouveau message</legend>
                <hr>
                <div>
                    <ul>
                        {% for error in addMessage if addMessage is not null %}
                            <li>
                                <span>Erreur</span>
                                {{ error }}
                            </li>
                        {% endfor %}
                    </ul>
                </div>
                <div>
                    <label for="messageContent">
                        Message
                        <span>*</span>
                    </label>
                    <div>
                        {# LE TEXTAREA EN QUESTION #}
                        <textarea name="messageContent" id="messageContent" cols="30" rows="10"
                                  placeholder="Votre message" required></textarea>
                    </div>
                </div>
                <div>
                    <div>
                        <button type="submit">Envoyer</button>
                    </div>
                </div>
            </fieldset>
        </form>

Mon CDN TinyMCE dans mon head :

{# jQuery #}
    <script src="http://localhost/lande/node_modules/jquery/dist/jquery.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>

{# TinyMCE #}
    <script src="https://cloud.tinymce.com/stable/tinymce.min.js"></script>
    <script>tinymce.init({ selector:'textarea' });</script>

Quelqu'un aurait une idée ?

4 réponses


Si ton soucis est coter php donne plutot ton script qui gère l'envoie en bdd, de plus il faut mettre un name a ton button submit si c'est lui que tu veut capter dans POST

J'ai trouvé le soucis. Il venait du required placé au Textarea. L'éditeur remplaçait et masquait le Textarea mais le required était toujours là. Du coup, j'avais beau submit, pour le site mon Textarea était toujours vide.

Merci tout de même pour la remarque neecride, j'ai effectivement oublié de mettre un name au submit. Il ne me reste plus qu'à trouver un éditeur markdown ou bbcode car je n'aime pas beaucoup l'idée de TinyMCE en HTML.

Bootstrapmde est bien comme éditeur et michelf ou encore erusev parsedown qui fonctionne bien comme parser, mais dans tout les cas htmlpurifier ou un autre est indispensable.

Bonjour Talenvni j'ai le même problème mais personnellement je suis resté sur l'editeur WYSIBB...il remplace mon textarea par sa propre iframe... du coup pour mon formulaire le textarea est vide... as tu une solution ??

Te remerciant par avance