Autor Zpráva
Martinek
Profil *
Prosím o radu, je li použití následující funkce na webu bezpečné. Uživatel může do $equation zadat cokoliv.
function calculator($equation)
{
        $equation = preg_replace("/[^0-9+\-.*\/()%]/","",$equation);
        $equation = preg_replace("/([+-])([0-9]+)(%)/","*(1\$1.\$2)",$equation);
        $equation = preg_replace("/([0-9]+)(%)/",".\$1",$equation);

        if ( $equation == "" ) {
                $return = 0;
        } else {
                eval("\$return=" . $equation . ";");
        }
        return $return;
}
Díky moc
Joker
Profil
Martinek
Záleží na tom, jakým způsobem je ta funkce použitá. Ale pokud uživatel může zadat cokoliv a projde to až do té funkce, tak to moc bezpečné není.
Když jako vstup zadám třeba: unlink("index.php");
Martinek
Profil *
To nic neudělá, to tím regularnim vyrazem neprojde :)

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: