我正在使用带有远程处理的Flex 3来从MySQL数据库返回数据。我是否需要使用htmlspecialchars才能保证我的网站安全?
据我了解,htmlspecialchars用于“清理”从db返回的数据。例如:
$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);
或者是其他人?
答案 0 :(得分:2)
htmlspecialchars()用于清除用户提供的输入,如果您将其回显给用户,以防止跨站点脚本(XSS)。此外,如果您的数据库存储HTML格式的字符串,并且您希望将其显示给用户(而不是将其作为HTML将其解释为浏览器),则使用htmlspecialchars()。
在您的情况下,如果输出只是数字,则不一定非必要。