从不安全输入中清除字符串的函数,销毁输入并返回空字符串PHP


A function for cleaning string from unsecure inputs, destroys input and return empty string PHP

当我给这个函数赋值时,总是返回一个空字符串。

<?php
function safeinput($data)
{
    $data = trim($data);
    $data = stripslashes($data);
    $data = htmlspecialchars($data);
    $data = mysql_real_escape_string($data);
    return $data;
}
?>

是否有其他方法来保护输入?注:joomla

下的操作

最好的方法是确保根据预期的值类型限制输入。你可以参考

docs.joomla.org/J1.5: Retrieving_and_Filtering_GET_and_POST_requests_with_JRequest:: getVar

http://api.joomla.org/cms - 2.5 -/- classes/jrequest.html

可能的过滤器是

    INT
  • 整数
  • BOOL
  • 布尔><
  • 词/gh>
  • ALNUM
  • CMD
  • BASE64
  • 字符串
  • 数组
  • 路径>
  • 用户名

,您可以使用。

转义数据。
    $db= JFactory::getDbo();
    $db->getEscaped($data);

http://api.joomla.org/cms - 2.5 -/- classes/jdatabase.html # method_getEscaped