Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MSSQL][PHP][JavaScript]tinymce - edycja i aktualizacja pola
Forum PHP.pl > Forum > Przedszkole
fiasko
Mam taki problem w tinymce .

Jak aktualizuję edytowaną zawartość to treść nie do końca się aktualizuje tak jak tego bym sobie życzył. Jeśli zaktualizuję opis nadając mu pogrubioną czcionkę to się zaktualizuje poprawnie gdy nacisnę aktualizuj. Wtedy dane wysyłane są do bazy postem i zapisywane.

Natychmiast widać w edytorze pogrubioną czcionkę w oknie edycji i w tym wypadku jest ok.

Natomiast gdy aktualizuję kolor czcionki to wtedy zmiany nie są widoczne po wciśnięciu przycisku aktualizuj. Z czego to wynika , że zmiany nie są widoczne ?

W bazie zapisuje się wszystko poprawnie. Gdy odświeżę potem stronę nic to nie daje. Muszę jeszcze raz wejść w edycję i dopiero wtedy widać, zmiany koloru czcionki gdy edytor pobierze dane z bazy danych. Natomiast gdy edytor pobierze sobie dane ze zmiennej post to przy aktualizacji i przeładowaniu strony znika kolor czcionki.

Wyłączyłem filtrowanie zmiennych i nie mam pojęcia co to za problem smile.gif

Zauważyłem też, że rekord w bazie i zmienna post są identyczne. Jedyna różnica w nieprawidłowym działaniu jest wtedy gdy dane ładowane są ze zmiennej post. Wtedy tekst wyświetla się niepoprawnie po przeładowaniu.

HELP

po kliknięciu aktualizuj klikam źródło strony i tak wygląda kod z tinymce


  1. <textarea name="oferta_tresc" class="tinymce"><p><span><strong>test napisu jest asdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf <span style=\"background-color: #ff0000;\">afd</span><br /></strong></span></p></textarea>



Jak widać kod źródłowy jest ok. Jednak tekst afd w oknie edytora jest czarny zamiast czerwony.

O co biega ?




zrobiłem taki test :

zmienna $oferta_tresc została chwilowa zastąpiona kodem statycznym, który pojawia się w teraz w edytorze. Wysyłając formularz powinienem odebrać taką samą zmienną w $_POST["oferta_tresc"] bo tylko to przesyłam w treści edytora.

Kod
$oferta_tresc2  = $_POST["oferta_tresc"];
    
$oferta_tresc = "<p><span><strong>test napisu jest asdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf <span style=\"background-color: #ff0000;\">afd</span><br /></strong></span></p>";


if($oferta_tresc == $oferta_tresc2 ) {
$takie_same = "takie same";

}
else {
$takie_same = "różne";

}


W efekcie dostaje wynik - różne . Tylko gdy zaglądam do kodu to wszystko jest takie same. Czy tinymce coś jeszcze dodaje od siebie ? dlaczego tego nie widać ?

Może mnie ktoś naprowadzić gdzie może być błąd ? Dlaczego zmienna wysłana postem przez tinymcy jest różna od tej którą wprowadziłem ?

Dałem nawet alert w js i też w kodzie źródłowym kod jest taki sam. Mimo to gdy porównuje zmienne są różne, a kolor się nie wyświetla. Czy mogą być jeszcze jakieś znaki niewidoczne gdzieś?
Użułem trim w php aby wywalić spacje i też nic - nadal zmienna są różne. Wygląda na to że tinymce nadpisuje jakoś wartość zmiennej po wysłaniu jej postem z obszaru edytora. Jedank porównując zmienne wizualnie są identyczne. Tylko porównanie zmiennych wskazuje na to, że czymś się jednak różnią. Tylko czym ?

potreb
stripslashes
fiasko
Racja - to rozwiązało problem z tymi kolorami itd. Ale już tak z czystej ciekawości dlaczego gdy wywalam na ekran wartość zmiennej w alert to nie widać tam żadnej różnicy w jej zawartości ?

stripslashes nie pokazuje swojego działania ?
potreb
Nie wiem, może nie odświeżasz wartości po zmianie.
fiasko
Strona jest przeładowana więc powinienem zobaczyć jakieś różnice w zmiennej. Białe znaki wyeliminowałem przez trim. To co u licha powoduje , że ta sama wartość zmiennej wysłana za pomocą posta sprawia że potem ta zmienna jest już inna ?

To można porównać taką analogią. Wkładam do paczki białą piłkę wysyłam ją i odbieram czarną. Nie wiadomo czemu utraciła kolor. Żeby było bardziej dziwnie to kod odpowiadający za kolor niczym się nie różni od tego jaki został wysłany. Odbieram zatem takie dane jakie wysłałem z tym że kolor jest i tak utracony.

Aby się upewnić czy na pewno tak jest to wyświetliłem sobie tablicę POST i zajrzałem w źródło strony. Widzę tam taki kod jaki wysłałem - poprawny. Aby to potwierdzić na 100% wyświetliłem wartość zmiennej alertem w js. Ewidentnie niczym się ten kod nie różni od tego jaki został wysłany pierwotnie. Tak więc kolor powinien zostać zinterpretowany przez przeglądarki.

Niestety porównanie zmiennych w php tej z przed wysłania i po wysłaniu pokazuje, że zmienne są różne.

Magia ?


potreb
A po co wyświetlasz alertem kod? Kolor w alercie nie obowiązuje.
fiasko
To, że w alercie kod koloru nie obowiązuje to ja wiem. Ciekawiło mnie porostu czy nie ma tam jakiś zbędnych znaków cytatu lub czegokolwiek innego co powoduje , że kolor się nie wyświetla docelowo .
Rid
Spróbować jeszcze użyć htmlspecialchars_decode podczas wyświetlania zmiennej z edytora.
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-2025 Invision Power Services, Inc.