htmlentities mysql_real_escape_string

时间:2012-09-18 16:25:28

标签: php login

我只是想知道我做得对。

PHP

<?php 
if(isset($_POST['email']) && isset($_POST['password'])) {
    $email = htmlentities(mysql_real_escape_string($_POST['email']));
    // then hash password
}
?>

HTML

<form action="" method="POST">
    <input type="email" name="email" />
    <input type="password" name="password" />
    <input type="submit" name="Login" />
</form>

htmlentities()一起做mysql_real_escape_string是否合适? 或者我需要做什么?

1 个答案:

答案 0 :(得分:0)

我认为htmlentities()可以防止XSS攻击。因此,如果您要将此数据再次重新呈现为HTML格式,请使用它。如果您只担心众所周知的SQL Injection攻击,我会说mysql_real_escape_string()对您来说已经足够了。

请记住,一旦您再次展示HTML实体,就需要对其进行解码。