denis94
25.01.2011, 22:47:59
Witam.
Posiadam na stronie formularz który służy do tworzenia mini strony internetowej. W formularzu można używać tylko html oraz css, tak więc nie mogę filtrować treści formularza funkcją addslashes itp. Treść z formularza jest zapisywana w bazie mysql a następnie wyświetlana jako mini stronka. Mam pytanie jak przefiltrować treść wysyłaną w formularzu tak aby kod php nie był wywoływany oraz usuwany ale również html i css (w tym znaki typu ", ', ;,) były akceptowane. Proszę o pomoc.
thek
25.01.2011, 22:57:44
A czym się charakteryzują skrypty w html? Otwarciem <? i zamykaniem przez ?> Jeśli jest tylko <? to wywalasz wszystko aż do końca. Proste?
denis94
26.01.2011, 15:14:03
To rozwiązanie nie będzie zbyt dobre. Mini stronkę mogą robić też osoby które dopiero zaczynają z html i wtedy gdy gdzieś nie zakończą > to dalsza część strony im się usunie.
gothye
26.01.2011, 15:26:52
za pomocą preg_replace bym usuwał kod JS aby zabezpieczyć przed JS
co do kodu php to bym się nie martwił pod warunkiem że nie wyświetlasz mini stronki za pomocą eval
wordpress ma dodatkowo np że div które umieszczasz w kodzie są zmieniane na znacznik <p></p>
denis94
26.01.2011, 15:34:07
stronka była by wyświetlana w echo lecz co jeżeli ktoś umieści w kodzie kawałek typu "; zamykający echo a dalej poda kod php?
thek
26.01.2011, 17:30:00
I co z tego, że im usunie... Jesli ktoś próbuje przepchnąc skrypt php lub inny w kodzie, choć wyraźnie tego zabraniasz to chyba nie ma czystych zamiarów

Poza tym skoro ktoś nie zamyka tagów skryptu to znaczy że albo nie robi tego celowo, albo zwyczajnie nie wie co robi podczas mieszania php i html. Zaryzykujesz uruchomienie takiego kodu na serwerze?
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.