Autor Zpráva
xlifer
Profil
Pokud někdo odešle formulář a ja chci následně zobrazit formulář stejně vyplněný např. z důvodu chyby nebo chybějících údajů, tak jak hodnoty zabezpečit proti injection zda to lze v případě formulářů lze takto nazvat? (zejména se mi teda jedná o be6ný text, protože jiné hodnoty lze zabezpečit přes intval apod. bez problémů).

Lze to řešit takto: ?

<form action="skript.php" method="post">
<input type="text" name="hodnota" value="<?echo htmlspecialchars(stripslashes($_POST["hodnota"]));?>">
</form>


Nebo použit jen strip_tags($_POST["hodnota"]); ?
Darker
Profil
Není to potřeba, jelikož injection se používání ke škodění ostatním uživatelům - spouštění skriptů, logování stisků klávesy. (a nebo prostě while(true) a je vymalováno)
Sám u sebe může uživatel HTML měnit i bez nějakého injection.
xlifer
Profil
Asi jsem se špatně vyjádřil s tím injection, nicméně šlo mi také o záležitost jak upravit data zpět do formuláře vůči speciálním znakům jako uvozovky, zpětné lomítko apod.

Když odešlu v poli např. znak "
A zobrazím zpět ve formuláři přes echo $_POST["hodnota"];
zobrazí se mi hodnota jako \"
a tohle když odešlu znovu, tak se to násobí \\" atd.

Řeší to StripSlashes, doporučili by jste takové znaky ošetřovat ješte jinak nebo jaký je ideální ošetření takových případů ve formuláři?
Tori
Profil
xlifer:
Když odešlu v poli např. znak "
A zobrazím zpět ve formuláři přes echo $_POST["hodnota"];
zobrazí se mi hodnota jako \"
= máte zapnuté magic_quotes, na hodně hostinzích už to bývá vypnuté. Buď bych je vypnula v .htaccess, anebo se dají ošetřit funkcí od J.Vrány. Při výpise do formuláře pak jen htmlspecialchars().
xlifer
Profil
Tori:

Super Tip na funkci od Jakuba Vrány, díky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0