Cześć

Zauważyłem, że strip_tags, który otrzymuje tekst z odpowiedzi ajaxowej (przez metodę POST) źle ucina ciąg znaków.

Tekst, który jest przesyłany przez AJAXa (wg. Firebuga);
Kod
=<p>i'm em english man '' &gt; dasdad atest</p>


Tekst oryginalny, pisany w edytorze (coś na wzór TinyMCE):
Kod
i'm em english man '' > dasdad atest


Funkcja, która filtruje tekst:
  1. $allowedTags = '<b><u><i><a><s><img><hr><strong><blockquote><div><span>';
  2. $message = nl2br($message);
  3.  
  4. return strip_tags($message, $allowedTags);


Problem leży w połączeniu tekstu pochodzącego z odpowiedzi typu AJAX, ponieważ output ostatecznie wygląda następująco:
Kod
string(1) "i"


czyli gubi się w momencie, gdy wpadnie na przeszkodę w postaci znaku: ' - oczywiście jak zmienię zdanie: i'm na im to wówczas utnie tekst
przed "" > - w ogóle nie wyświetli reszty ciągu znaków tj: dasdad atest, czyli wyświetli tylko:
Kod
im em english man


Jak przeprowadziłem taki test "na sucho" tj: bez ajaxu - tylko na sztywno wymusiłem filtr za pomocą funkcji to wszystko przeszło prawidłowo.
Gdzie mogę szukać przyczyny błędu?

UPDATE: Problem rozwiązałem filtrując dane przez funkcje escape