Autor Zpráva
Začátečník v nesnázích
Profil *
nahrazuji nepohodlné znaky tímto způsobem:
$_POST=str_replace(">", ")", $_POST);

chci se zeptat jakým způsobem lze nahradit znak uvozovky, lomítko, zalomení řádku a tabulátor,

uvozovky bych chtěl nahradit za prázdný znak - prostě je zrušit (nebo pokud je to možné za apostrof, ale nevím jestli ten není stejně nebezpečný jako uvozovky)
lomítko bych chtěl nahradit za to bezpečné lomítko (snad mi rozumíte, nejsem si jist jestli to nebezpečné je zpětné nebo normální lomítko)
a zalomení řádku - vím že se to dá zapsat "lomítko n" a "lomítko 13" (nevím jestli zpětné nebo normální, ale hlavně je možné na to použít str_replace, když to nahradíjen jeden znak a "lomítko 13" jsou vlastně už 3 znaky.

Napadá Vás ještě nějaký nebezpečný znak, který bych měl eliminovat aby mi pak někde nedělal paseku? :-)

předem díky moc za pomoc :-)
Kcko
Profil
HtmlSpecialChars();
Str_Replace();
Začátečník v nesnázích
Profil *
děkuji, ještě bych potřeboval vědět jak zapíšu nahrazení znaku tabulátor za mezeru? Jaký je ekvivalent pro tento znak? Totéž se týká i zalomení řádku - lze na to použít Str_Replace?
Začátečník v nesnázích
Profil *
jsem napsal:
$_POST = htmlspecialchars($_POST, ENT_QUOTES);

a hodilo mi to následující chybu :-(
Warning: htmlspecialchars() expects parameter 1 to be string, array given in D:..........
Timy
Profil
Začátečník v nesnázích
$_POST je pole, musíš tam vrazit přímo nějakou proměnnou $_POST["email"]; třeba
pavel prochazka.zde.cz
Profil *
Začátečník v nesnázích
nefunguje toto:
$sVystup = ereg_replace(chr(13), ' ', $sVstup); //CR
$sVystup = ereg_replace(chr(10), ' ', $sVstup); //LF
$sVystup = ereg_replace(chr(23), ' ', $sVstup); //ETB nevim asi tabulator....
krteczek
Profil
$nahrad = array("\r" => '', "\t" => ' ', "\n" => '<br>');
$vystup = strtr($text, $nahrad);

r => je z windows
t => je tabulátor
n => nový řádek
Začátečník v nesnázích
Profil *
díky moc všem

Timy
HtmlSpecialChars neumí procházet pole? Divím se, protože str_replace to totiž umí. Příkaz $_POST=str_replace(">", ")", $_POST); mi nahradí všechny znaky ve všech proměnných pole $_POST. V tom poli mám 28 proměnných, to je musím každou extra prohnat tou funkcí HtmlSpecialChars? To je docela nepříjemné ...
Toto téma je uzamčeno. Odpověď nelze zaslat.