Je reviens vers vous apres une journée complète de tests de ckeditor,
alors il est très puissant comme éditeur Wysiwyg mais la doc est flou par moment (peut-être a cause de mon anglais dégueulasse, merci google) même si la doc, elle est complète effectivement.
jreaux62 : J'ai fait une page de test, la voici :
Code php : 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 <?php require_once 'inc/header.php'; ?> <h1>Test ckeditor</h1> <form action="" method="POST"> <div class="form-group"> <label for="message">Votre message</label> <textarea name="message" class="form-control ckeditor" id="message" rows="6"><?= empty($_POST['message']) ? '' : htmlspecialchars($_POST['message'], ENT_QUOTES); ?></textarea> <script> // instance, using default configuration. CKEDITOR.replace( 'message', { language: 'fr' }); </script> </div> <button type="submit" class="btn btn-primary">Envoyer</button> </form> <?php function bbcodes($texte) { $texte = str_replace("","<b>", $texte); $texte = str_replace("","</b>", $texte); $texte = str_replace("","<i>", $texte); $texte = str_replace("","</i>", $texte); return $texte; } if (!empty($_POST)) { echo "<p>test avec var_dump :</p>"; var_dump($_POST['message']); echo "<p>test avec function bbcode + htmlspecialchars</p>"; echo bbcodes(htmlspecialchars($_POST['message'])); } ?> <?php require 'inc/footer.php'; ?>
config de ckeditor : j'ai installé les addons bbcode et entities (car obligatoire avec bbcode selon ckeditor) et.. 2 remarques :
1/ Comme tu peux le voir je viens de faire une petite function bbcode pour transformer les [] en <> au moment de l'affichage.
Question : existe t'il pas un addon capable de convertir les bbcode en html.. ? car il existe des centaines de balises html j'ai cherché sur le site mais je comprends pas l'anglais donc j'ai traduit les pages de la doc mais rien..
2/ donc je reprends : J'ai installé ckeditor standard, + addon bbcode + addon entities (http://ckeditor.com/addon/entities).
J'ai rajouté la ligne
au fichier config.js pour prendre en compte les deux addons.
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part config.extraPlugins = 'bbcode,entities';
Je reviens sur ma page pour tester, les boutons gras, italique, liste a puce etc fonctionnent. Mais d'autres boutons ne fonctionnent pas, ou plutôt, ils ne transmettent pas le bbcode dans le textarea mais visuellement si.. par exemple pour la création d'un tableau basic.. je le vois bien à l'écran au moment d'éditer mais quand je clic sur Source et qu'ensuite je reviens en mode édition la je n'ai plus mon tableau..
enfin.. une journée complète de tests pour pas grand chose de concluant je trouve. Il est beau comme outil mais pas sécurisé du tout selon moi, pour preuve il suffit de taper un simple :
et la.... message en javascript qui s'affiche (super dans une conversation sur un forum) ! et si je rajoute le bon vieux htmlspecialchars au moment de l'affichage, je n'ai plus la mise en forme ! donc voila !
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part <script>alert('faille')</script>
Partager