Napisałem swój własny system komentarzy oparty o
ajax ($post), php oraz PDO. Zastanawiam się jak zabezpieczyć te komentarze. Ajaxa zabezpieczyłem tokenem, który się zmienia przy każdym odświeżeniu strony i jest ściśle powiązany z danymi które wysyłam przez POST, oraz userem który w tej chwili pisze komentarz(wysłanie linku z gotowym formularzem zakończy się fiaskiem). Każda zmiana istotnych danych kończy się przerwaniem - exit(). Do wysłania do bazy danych użyłem PDO i funkcji prepare(). Zastanawiam się jeszcze tylko nad samym komentarzem, probowałem zabezpieczyć to np tak:
Code: Zaznacz cały
trim(strip_tags(mysql_real_escape_string($string)));
Jest jednak mały problem, ponieważ funkcja mysql_real_escape_string zaznacza mi wszystkie znaki typu entery i zamienia na jakieś swoje odpowiedniki "/n". Przez co komentarz się 'psuje'.
Próbowałem również napisać odpowiedni kod za pomocą funkcji preg np.
Code: Zaznacz cały
(preg_match('@^([a-z0-9\!\@\#\$\%\^\&\*\?\(\)\-\_\-\+\,\.\"\'\[\]]+)$@iu', $intiger ))
Jednak coś mi się wydaje że zwłaszcza z tymi cudzysłowami to nie zadziała.
Co mógłbym zrobić?
I pytanie nr 2 muszę jakoś zabezpieczyć komentarz przed wysłaniem go ajaxem? Jeżeli tak to jakich funkcji użyć w javascript?