2

我正在使用带有远程处理功能的 Flex 3 从 MySQL 数据库返回数据。我是否需要使用 htmlspecialchars 来确保我的网站安全?

据我了解,htmlspecialchars 用于“清理”从数据库返回的数据。例如:

$query = "SELECT latitude, longitude FROM myTable WHERE type = '$type'";

            $result = mysql_query($query);

            $ret = array();
                 while ($row = mysql_fetch_object($result)) {
                    $tmp = new VOmyData();
                    $tmp->latitude = $row->latitude;
                    $tmp->longitude = $row->longitude;
                    $ret[] = $tmp; 
                        }
                 mysql_free_result($result);

                 return $ret;

在上述情况下如何使用它?

return htmlspecialchars($ret);

还是我写:

$result = htmlspecialchars($result);

还是别的什么?

4

1 回答 1

2

htmlspecialchars() 用于清理用户提供的输入(如果您将其回显给用户),以防止跨站点脚本(XSS)。此外,如果您的数据库正在存储 HTML 格式的字符串,并且您希望将其显示给用户(而不是让他们的浏览器将其解释为 HTML),则使用 htmlspecialchars()。

在您的情况下,如果输出只是数字,则实际上没有必要。

于 2011-05-23T23:14:38.173 回答