Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CKeditor] Problem ze znakiem mniejszości.
Forum PHP.pl > Forum > Po stronie przeglądarki
_walus
Hej,

Szukam od pewnego czasu rozwiązania mojego problemu, ale niestety nic co by mi pomogło nie znalazłem... Może ktoś z Was miał podobny problem?

Używam na swojej stronie edytora CKeditor w wersji 4.6.2. Ostatnio przez przypadek zauważyłem, że znak mniejszości "<" usuwał treść za nim aż do wciśnięcia "enter".
Po obejrzeniu bazy okazuje się, że CKeditor tworzy z tej treści nowy znacznik przez co w bazie jest to wyświetlane ale już w edytorze czy na stronie nie np wpisując "ziarnko pisaku < ziarnko grochu" w bazie dostajemy "<p>ziarnko pisaku <ziarnkogrochu>".

Miał ktoś może podobny problem?

Pozdrawiam serdecznie
Adam
vokiel
Z tego co widzę, to nie problem z CKEditorem tylko z zapisem/odczytem do/z bazy danych.

Przed chwilą sprawdziłem co generuje edytor po wpisaniu

Cytat
ziarnko pisaku < ziarnko grochu


wynik to:
  1. <p>ziarnko pisaku &lt; ziarnko grochu</p>
_walus
Tak jest jak podglądasz kod w edytorze, ale jak podejrzę co wysłał formularz zanim zapiszę treść z tego polo do bazy to pokazuje mi, że ckeditor wygenerował "ziarnko piasku < ziarnko>".
W bazie to wygląda tak: "<p>ziarnko piasku óóó < ziarnko>" - jak by zamiast </p> zrobił tag "<ziarnko>
vokiel
Zrób test na http://sdk.ckeditor.com/samples/savetextarea.html - usuń cały istniejący tekst, zmień format na Normalny, wklej i kliknij Submit.

Jeśli na czystej wersji działa poprawnie to widzę dwie opcje:
1. Masz jakieś customowe ustawienia/pluginy
2. Coś po drodze modyfikuje treść
_walus
Zrobiłem i faktycznie na podanej przez Ciebie stronie jest tak jak być powinno, ale w rzeczywistości u mnie jest inaczej ;/

Ustawienia mam właśnie standardowe, ale na wszelki wypadek wywaliłem wszystkie i postawiłem gołe. Niestety żadnej poprawy.
Treść formularza jest wysyłana do walidacji, ale jak wcześniej pisałem przechwyciłem tekst przed jakimkolwiek działaniem skryptu PHP i wtedy już jest "obcięty" przez edytor.

Witki opadają. Ale jak tak krążę po necie to widzę, że sporo osób ma ten problem, ale nikt nie zna złotego środka...

Dzięki za zainteresowanie smile.gif
vokiel
A jak pobierasz dane z edytora?

Może sprawdź co dostajesz z getData() przed uruchomieniem innych akcji.

http://docs.ckeditor.com/#!/guide/dev_savedata
http://docs.ckeditor.com/#!/api/CKEDIT...-method-getData

Tak w ogóle to odpal debugger i sprawdzaj krok po kroku gdzie masz jakie dane.
_walus
Dzięki Ci wielkie smile.gif Naprowadziłeś mnie na dobre tory. Przez szukanie rozwiązania w necie i ilości podobnych problemów byłem tak zaślepiony, że utwierdziłem się w przekonaniu, że to wina edytora. Dopiero Ty naprowadziłeś mnie na możliwość błędu z zupełnie innej strony. Dzięki! smile.gif

Ale dla potomnych - jak by ktoś, kiedyś, gdzieś się męczył z problemem wink.gif

Korzystałem w tym projekcie z Codeigniter'a no i na samym początku projektu włączyłem filtrowanie wszystkich danych pod kątem ataków XSS i o nim zapomniałem. I to on powodował taką dziwną zamianę.

No ale to znów jakaś nowa wiedza na przyszłość wink.gif

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.