我的网站上有一个 TextArea
,我将输入写入数据库。
我想过滤此 TextArea
输入,但不删除任何 HTML 标签或其他内容。
简而言之,我想在将输入写入我的数据库之前对其进行清理和保护,但是当我从数据库中取回该条目并将其写入网站时,我希望该条目完好无损且未被修改。
我怎样才能做到这一点?
最佳答案
如果您想在将字符写回网站时保留字符的数据字符,请尝试:
$stringToSave = mysql_real_escape_string($inputString);
然后从数据库中检索它时:
$stringToPutOnPage = htmlentities($databaseString);
如果你想让 html 实际上被读取为 html(小心 XSS)你可以使用:
$stringToSave = mysql_real_escape_string($inputString);
编辑:似乎最好的做法是在从数据库中检索字符串之后而不是之前对 html 字符串进行清理。感谢您的评论,我将不得不改变我的方法。
关于PHP - 非破坏性输入清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5175616/