Autor | Zpráva | ||
---|---|---|---|
echo Profil * |
#1 · Zasláno: 28. 2. 2009, 14:12:07
Zdravím,
vytvářím web pro "starší" generaci, která se bude jen těžko orientovat v texyle, bbcode či v cokoliv jiném. Takže jsem použil tinymce. Bohužel nevím, jak ošetřit vstup od uživatele tak, aby se nedal použít js, iframe a další rizikové věci. htmlspecialchars použít nemohu, protože editor standartně převádí vše do html hned při psaní (ne jak u texyly) a na bbcode styl v tinymce se mi přepínat nechce, protože ten zase neumí resize obrázků. Napadlo mě něco jako: function ochrana ($text) { $text=str_replace('<script','<script',$text); $text=str_replace('</script','</script',$text); $text=str_replace('<?','<?',$text); $text=str_replace('?\>','?>',$text); return $text; } Toto ale nefunguje, když by někdo použil <ScRiPT...., takže se ptám, jestli někdo neví, jak jde udělat replace bez ohledu na velikost písmen. Děkuji |
||
panther Profil |
#2 · Zasláno: 28. 2. 2009, 14:17:28
echo
co třeba eregi_replace? Ten by měl být „case insensitive“. |
||
Mike8748 Profil |
#3 · Zasláno: 28. 2. 2009, 14:19:33
echo
co takhle str_ireplace() ? panther neni duvod pouzivat reg. vyrazy, kdyz to jde jednoduseji a rychleji pomoci String funkci |
||
SwimX Profil |
#4 · Zasláno: 28. 2. 2009, 15:04:25
echo
tvým skriptem ale nezabráníš <iframe src=''></iframe> a také ne <a onmouseover=""> a podobné JS které nejsou v tagu script Mike8748 setkal jsem se, že mi str_ireplace nefungovala. Konkrétně na webu zdarma, přitom na localu mi to jede. Když sem umazal i jelo to. Nevím proč. |
||
Aesir Profil |
#5 · Zasláno: 28. 2. 2009, 15:42:54
„setkal jsem se, že mi str_ireplace nefungovala. Konkrétně na webu zdarma, přitom na localu mi to jede. Když sem umazal i jelo to. Nevím proč.“
Protože tato funkce byla přidána až do páte verze PHP. |
||
SwimX Profil |
#6 · Zasláno: 28. 2. 2009, 16:14:59
Aesir
Aha. Děkuji takže jediná možnost (když nechci regulár): $text=str_replace('<?','<?',strtolower($text)); ? |
||
Aesir Profil |
#7 · Zasláno: 28. 2. 2009, 16:29:54
SwimX:
„takže jediná možnost (když nechci regulár): “ No jak se to vezme, je dobré myslet na to, že všechny parametry mohou být i pole. Mrkněte do manuálu do komentářů, bude tam určitě nějaká hotová, funkční varianta pro PHP4. |
||
Časová prodleva: 15 let
|
0