Eregi_replace

Potreboval bych vytvorit prikaz, ktery odstrani z retezce, ktery obsahuje jmeno souboru, znaky: .., ", ', / (slovy dvě tečky, uvozovky, apostrof, zpětné lomítko).

Jde mi tedy vlastně o bezpecnost.

Vím, že se to dělá pomocí Eregi_replace (nebo ereg_replace, když nechci case sensitive), dokážu to udělat po jednom, ale ne najednou.

Najde se někdo, kdo poradí, jak to udělat všechno v jednom příkazu?

Díky moc.

Jo a kdybyste vedeli o nejakym hodne dobrym clánku na regularni vyrazy, muzete ho pridat. Urcite by se mi hodil.
Najdi si funkci HTMLSpecialChars nebo HTMLEntities. Ty nahrazují znaky za html entity.

Pro "odzbrojení" uvozovek, apostrofů a \ slouží funkce AddSlashes() a StripSlashes().

Pokud chceš opravdu z řetězce odstranit veškeré ", ', /, tak třeba takto:

function StripChars($string)
{
$translation_table[Chr(34)] = ''; // "
$translation_table[Chr(39)] = ''; // '
$translation_table[Chr(47)] = ''; // /

return StrTr($string, $translation_table);
}

$promenna = StripChars($promenna);
Nebo taky Str_Replace(), ale to předešlé řešení se mi líbí víc.